Bar code reader for automatically detecting the presence of a bar code using laser flicker

ABSTRACT

Method and apparatus for automatically reading bar code symbols using a reading device containing a laser beam configured to provide a scan field. The method involves automatically detecting the presence of a bar code within the scan field by flickering the laser beam. In automatic response to the detection of a bar code, the automatic bar code symbol reading device generates a laser beam scanning pattern and reads the detected bar code by producing scan data signals from the detected bar code and thereafter collecting and analyzing these data signals. Further aspects of the present invention relate to hand-holdable data collection devices adapted for use with the automatic bar code symbol reading device to form a portable symbol reading system characterized by versatility and simplicity of use.

RELATED CASES

This is a Continuation of patent application Ser. No. 09/273,825, filedon Mar. 22, 1999 now U.S. Pat. No. 6,412,700, which is a Continuation ofpatent application Ser. No. 08/827,118, filed on Mar. 27, 1997, nowissued as U.S. Pat. No. 5,925,870, which is a Continuation of patentapplication Ser. No. 08/584,135, filed on Jan. 11, 1996, now issued asU.S. Pat. No. 5,616,908, which is a Continuation of patent applicationSer. No. 08/278,109, filed on Nov. 24, 1993, now issued as U.S. Pat. No.5,484,992, which is a Continuation of Ser. No. 07/960,733, filed on Oct.14, 1992, now abandoned, which is a Continuation-In-Part of Ser. No.07/898,919, filed on Jun. 12, 1992, now issued as U.S. Pat. No.5,340,973, which is a Continuation-In-Part of patent application Ser.No. 07/761,123, filed on Sep. 17, 1991, now issued as U.S. Pat. No.5,340,971, which is a Continuation-In-Part of patent application Ser.No. 07/583,421, filed on Sep. 17, 1990, now issued as U.S. Pat. No.5,260,553.

Patent application Ser. No. 09/273,825, filed on Mar. 22, 1999, is alsoa continaution of patent application Ser. No. 08/660,643, filed on Jun.7, 1996, now issued as U.S. Pat. No. 5,886,337, which is a Continuationof patent application Ser. No. 08/293,493, filed on Aug. 19, 1994, nowissued as U.S. Pat. No. 5,525,789, which is a Continuation of patentapplication Ser. No. 07/761,123, filed on Sep. 17, 1991, now issued asU.S. Pat. No. 5,340,971, which is a Continuation-In-Part of patentapplication Ser. No. 07/583,421, filed on Sep. 17, 1990, now issued asU.S. Pat. No. 5,260,553.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to automatic code symbol readingsystems, and more particularly, to laser bar code reading systems whichpermit fully automated operation while providing a high degree ofsimplicity and flexibility.

2. Brief Description of Background Art

Hitherto, a number of techniques have been proposed for reading bar codesymbols using hand-held devices. Despite variety amongst prior art barcode symbol reading devices, the various techniques incorporated intoprior art devices can be classified into two principally distinctclasses, namely, manually operated or triggered bar code symbol reading,and automatic bar code symbol reading.

Representative of prior art manually operated bar code symbol readingdevices are U.S. Pat. No. 4,387,297 to Swartz, et al., U.S. Pat. No.4,575,625 to Knowles, and U.S. Pat. No. 4,845,349 to Cherry. While suchprior art devices are capable of bar code symbol reading, theynevertheless suffer from several significant shortcomings and drawbacks.In particular, the user is required to manually pull a trigger or push abutton each time symbol reading (i.e., scanning and decoding) is to becyclically initiated and terminated. This requirement is most fatiguingon the user when large numbers of bar code symbols are to be read. Also,in certain symbol reading applications, such as warehouse inventory,pulling the trigger to initiate scanning of bar code symbols may beextremely difficult for the user due to the physical location of theobjects bearing the bar code symbols.

An alternative to manually operated bar code symbol reading devices isautomatic bar code symbol readers, which incorporate techniques forautomatically initiating and terminating scanning and decodingoperations. Representative of prior art automatic bar code symboldevices are U.S. Pat. No. 4,639,606 to Boles, et al. and U.S. Pat. No.4,933,538 to Heiman, et al. While capable of automatically initiatingscanning of bar code symbols, such prior art devices and incorporatedtechniques nevertheless also suffer from significant shortcomings anddrawbacks.

In particular, U.S. Pat. No. 4,639,606 to Boles, et al. discloses laseremission control circuitry for use in implementing a hand-heldtriggerless bar code scanner. The laser is operated in a pulsed “findpaper” mode until a reflected signal is obtained, indicating thepresence of an object (e.g., paper) in the search field. Thereupon, thecircuitry is changed to a “search mode” in which the power of the laseris increased to above the safety limits for a period of time, and thereturn signal is monitored for signal transitions corresponding to theblack bars of the code. On detection of the first black bar, thecircuitry is changed to an “in-code” (i.e., decode) mode as long assuccessive symbols are received within a given period of time. If thedecode mode terminates within a predetermined time interval (e.g., onesecond after the beginning of the search mode), then the search mode isre-entered, otherwise the decode mode will change to find paper mode.

While the triggerless bar code symbol reader proposed in U.S. Pat. No.4,639,606 possesses three modes of operation, this prior art bar codesymbol reader nevertheless suffers from several significant shortcomingsand drawbacks. In particular, this prior art bar code symbol readerrequires continuous use of a pulsed laser beam to determine the presenceof an object within the scan field, which, in hand-held portable batterypower devices, undesirably drains limited power reserves, especially inextended time duration bar code reading applications. Also, this priorart device, not knowing whether a bar code symbol is actually present inthe scan field, requires commencement of decode processing upondetection of the first black bar. Undesirably, this typicallynecessitates initializing a programmable device, such as amicroprocessor, for decoding scan data that may likely contain no barcode symbol at all. Consequently, this characteristic of such prior artbar code symbol reading devices results in decreased responsiveness andversatility.

U.S. Pat. No. 4,933,538 discloses a bar code symbol reading systemwhich, in the “object sensor mode”, is triggerless and constantly emitsa laser beam at a narrow angle and low power. When an indicia patternindicative of a bar code symbol has been detected, the laser beam iswidened and its power increased, for reading the entire symbol. Whilethis prior art bar code reading system permits detection of bar codesymbols within the scan field in order that the power of the laser beammay be automatically increased to a higher level for collecting scandata for use in decoding operations, this system also suffers fromseveral significant shortcomings and drawbacks. In particular, itrequires continuous use of laser emission to determine the presence ofboth objects and bar code symbols within the scan field, whichnecessarily results in drain of limited power reserves in portablebattery power applications. In addition, the extensive use of a laserbeam to perform object and bar code symbol detection functionsimplicates necessity for laser emission control measures.

Prior art automatic bar code symbol reading devices, such as the devicesdescribed above, suffer from other shortcomings and drawbacks. At theoutset, consider manually operated scanners. These utilize a triggeringmechanism that must be activated every time the user desires to read abar code. But, if this process is somehow automated to eliminate theneed for trigger activation, other potential problems are created. Forexample, prior art automatic bar code symbol reading devices lack thenecessary intelligence capabilities to prevent undesired multiplereading of a bar code symbol, particularly when the scanning beam ispermitted to dwell on a bar code symbol for an extended period of time.

Further, prior art automatic bar code symbol reading devices lack systemcontrol capabilities which permit diverse modes of operation andautomatic reading of a plurality of consecutively different bar codesymbols, while preventing misreads and inadvertent multiple reads of thesame bar code symbol.

While prior art manually-triggered and prior art CCD (charge-coupleddisplay)-type scanners have played an important role in the developmentof the bar code symbol industry, these devices, suffer from a number ofshortcomings and drawbacks. For example, hand-held manually-actuatedlaser scanners, although portable and lightweight, are not alwaysconvenient to use particularly in applications where the user must readbar coded objects over an extended period of time. In many applications,where bar coded objects to be identified reside at arms length from theuser's reach, hand-held CCD scanners are difficult to operate owing totheir limited depth of field.

Unlike manually automated hand-held bar code scanners, fully automatichand-held laser scanners do not cause fatigue due to their automaticoperation. Also, owing to their extended depth of field, automatichand-held laser scanners provide increased flexibility by allowing theuser to read bar coded objects residing at distances of six or moreinches away from the scanner. However, even though automatic hand-heldlaser bar code scanners offer superior performance in most scanningapplications, it has been found that in intensely illuminated scanningenvironments, the user's ability to perceive the visible laser scanningbeam is significantly diminished in the scan field of the device.Consequently, in such scanning environments, it is difficult to visuallyalign (i.e. register) the laser scanning beam with the bar code symbolto be scanned, thus hindering the automatic bar code symbol readingprocess. While the use of a higher power visible laser beam might renderthe beam more easily perceptible, this approach is undesirable for lasersafety and power consumption reasons.

Thus, there is a great need in the code symbol reading art for a fullyautomatic hand-holdable code symbol reading device which overcomes theabove shortcomings and drawbacks of prior art devices and techniques.

OBJECTS AND SUMMARY OF THE INVENTION

Accordingly, it is one primary object of the invention to provide anautomatic bar code symbol reading device which detects the presence of abar code on an object situated within the scan field and, in response tosuch detection, proceeds to read the detected bar code symbol.

It is another object of the present invention to provide an automaticlaser scanning device which utilizes the psychological and physiologicalresponse characteristics of the human visual system in order to producea visible laser scanning beam that has improved user perceptibility overthe scan field of the device.

A further object of the present invention is to provide an automaticlaser scanning device in which a visible laser beam is pulsed at asufficiently low frequency over the scan field during a bar codepresence detection mode of operation, so as to increase the visualconspicuousness of the laser scanning beam.

It is another object of the present invention to provide a fullyautomatic, hand-holdable bar code symbol reading device capable ofautomatically reading one or more bar code symbols in a consecutivemanner without the above-described shortcomings and drawbacks of priorart devices.

It is another object of the present invention to provide such anautomatic bar code symbol reading system in which one or more bar codesymbols on an object can be consecutively read without requiringunnatural hand-movements of the automatic hand-supportable laserscanning device.

A further object of the present invention is to provide an automatichand-holdable bar code symbol reading device which is capable ofcollecting and detecting laser return light using collection optics andsignal processing circuitry.

Another object of the present invention is to provide a hand-holdablebar code symbol reading device which is capable of distinguishingbetween a bar code symbol and a regular pattern of light and dark areassuch as that formed by printed characters, and to only enable bar codesymbol reading operations upon the detection of a bar code symbol in thescan field of the device.

An even further object of the present invention is to provide anautomatic bar code symbol reading device which prevents multiple readingof the same bar code symbol due to dwelling of scanning beam upon a barcode symbol for an extended period of time.

A further object of the present invention is to provide a method ofautomatically reading a plurality of bar code symbols in a consecutivemanner.

A further object of the present invention to provide an automatichand-holdable bar code reading device wherein bar code presencedetection can be either manually selected by the user, or automaticallyselected when the hand-holdable bar code reading device is placed withina support stand.

A further object of the present invention is to provide an automatic barcode reading device wherein bar code presence detection can be manuallyselected, or automatically selected upon decoding a predesignated barcode symbol.

It is a further object of the present invention to provide an automatichand-holdable bar code reading device which has both long and shortrange modes of bar code presence detection, separately or simultaneouslyselectable for various bar code symbol reading applications, such as forexample, bar code “menu” reading, counter-top projection scanning,charge coupled device (CCD) scanner emulation, and the like.

It is a further object of the present invention to provide an automatichand-holdable bar code symbol reading device having a control systemwhich has a finite number of states through which the device may passduring its automatic operation in response to diverse conditionsdetected within the scan field of the device.

It is a further object of the present invention to provide a portablehand-holdable data collection device, to,which the automatic bar codesymbol reading device can be connected for supply of power andtransmission and storage of symbol character data, collected duringportable bar code symbol reading applications in, for example, retail,industrial and manufacturing environments where freedom of bar codescanner movement and flexibility are important considerations.

It is yet a further object of the present invention to provide aportable, fully automatic hand-holdable bar code reading system which iscompact, simple to use and versatile.

Yet a further object of the present invention is to provide an improvedmethod of automatically reading bar code symbols.

These and further objects of the present invention will become apparenthereinafter and in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the objects of the presentinvention, the Detailed Description of Illustrated Embodiments may betaken in connection with the drawings, wherein:

FIG. 1 is a perspective view of an automatic hand-holdable laser barcode symbol reading device constructed in accordance with the principlesof the present invention.

FIG. 2 is a cross-sectional elevated side view along the longitudinalextent of the automatic bar code symbol reading device of FIG. 1,showing various hardware and software components used in realizing thefirst illustrative embodiment.

FIG. 2A is a cross-sectional plan view along the longitudinal extent ofthe automatic bar code symbol reading device taken along line 2A—2A ofFIG. 2, also showing the various components used in realizing the firstillustrative embodiment.

FIG. 3A is an elevated side view of the bar code reading device of thefirst embodiment of the present invention, illustrating the spatialrelationship of the scan field of the device, and the long and shortrange of programmed bar code presence detection of the firstillustrative embodiment.

FIG. 3B is a plan view of the automatic bar code reading device of thefirst embodiment of the invention, taken along line 3B of FIG. 3A, whichalso illustrates the spatial relationship between the scan field of thedevice and the long and short ranges of bar code presence detection ofthe illustrative embodiment.

FIG. 4 is block functional system diagram of the automatic bar codesymbol reading device of the first embodiment of the present invention,illustrating the principal components of the device integrated with thecontrol system thereof.

FIG. 5 is a graph showing laser beam intensity as a function of time asdetermined by the bar code presence detection module of the presentinvention.

FIGS. 6A to 6E together comprise a high level flowchart of a systemcontrol program illustrating various courses of programmed systemoperation that the automatic bar code symbol reading device of theillustrative embodiment may undergo.

FIG. 7 is a logic state diagram setting forth interrelationships among aplurality of operational states for the automatic bar code symbolreading device of the illustrative embodiment.

FIGS. 8A, 8B, and 8C set forth perspective views of an illustrative barcode scanner configured to provide adjustable long and short range modesof bar code symbol presence detection.

FIGS. 9A to 9C together comprise a high-level flowchart of a systemcontrol program that provides scan range selection and optional objectdetection range selection.

FIG. 10A is an elevated side view of an automatic bar code readingdevice constructed pursuant to a second preferred embodiment of theinvention, illustrating the spatial extent of the scan field for barcode presence detection, and also the extent of the long and short rangedetection regions.

FIG. 10B is a partially cut away plan view of the device of FIG. 10A,showing various operative components thereof.

FIG. 10C is a partially cut away plan view of an alternative embodimentof the invention showing the layout of an illustrative optical signalprocessing system.

FIG. 10D is a schematic diagram representative of the optical signalprocessing system employed by the bar code symbol reading device of FIG.10C.

FIG. 11 is a hardware block diagram of an automatic bar code readingdevice constructed in accordance with the second illustrative embodimentof the invention.

FIGS. 12A to 12E together comprise a high-level flowchart of a systemcontrol program setting forth various courses of programmed operationthat the automatic bar code symbol reading device of the secondillustrative embodiment may execute.

FIG. 13 is a state diagram illustrating the various states that theautomatic bar code symbol reading devices of the illustrativeembodiments may undergo during operation.

FIG. 14A is a perspective view of the portable data collection deviceshown in FIG. 1.

FIG. 14B is an elevated side view of the data collection and storagedevice of the present invention, taken along line 14B—14B of FIG. 14A.

FIG. 14C is an elevated rear view of the data collection and storagedevice of the present invention, taken along line 14C—14C of FIG. 14B.

FIG. 15 is a block functional system diagram of the data collectiondevice of the present invention, showing various system componentsintegrated about a system controller.

FIGS. 16A to 16C together comprise a flowchart of a system controlprogram for the data collection device of an illustrative embodiment ofthe present invention, setting forth various operational states that thedevice may undergo during programmed operation, and indicating varioususer prompts displayed on a visual display during various modes of use.

DETAILED DESCRIPTION OF ILLUSTRATED EMBODIMENTS

Refer now to FIG. 1, which illustrates a first embodiment of theportable automatic bar code symbol reading system of the presentinvention. As shown, automatic bar code symbol reading system 1comprises an automatic bar code symbol reading device 2 operablyassociated with a hand-holdable data collection device 3. Operableinterconnection of bar code symbol reading device 2 and data collectiondevice 3 may be achieved, for example, by mechanism of a flexiblemulti-wire connector cord 4 extending from bar code symbol device 2 andplugged directly into the data-input communications port of the datacollection device 3. Alternatively, fiber optic cable could be employed,and/or a wireless communication link may be provided via use of one-wayor two-way RF (radio frequency) or IR (infrared) transceivers, receiver,and/or transmitters.

Referring now to FIGS. 1, 2, 2A, 3A and 3B, an automatic bar code symbolreading device 2 constructed in accordance with a first illustrativeembodiment of the invention comprises a lightweight hand-holdablehousing 5 which has a head portion 5A that continuously extends into acontoured handle portion 5B at an obtuse deflection angle α which can bein the range of 150 to about 170 degrees. In one preferred embodiment,deflection angle α is about 160 degrees. This ergonomic housing designmay be sculpted (i.e., form-fitted) using a typical or average humanhand as a model. In this manner, scanning is rendered as easy andeffortless as a wave of the hand, while the risk of musculoskeletaldisorders, such as carpal tunnel syndrome, is substantially reduced.Such disorders could potentially result from repeated biomechanicalstress associated with pointing prior art gun-shaped scanners at a barcode, squeezing the trigger to activate the scanning beam, and thenreleasing the trigger.

As illustrated in FIGS. 1 through 3B, the head portion of housing 5 hasa transmission aperture 6 formed in upper portion of front panel 7, topermit desired optical radiation to exit and enter the housing, as willbe described in detail hereinafter. The lower portion of front panel 7Bis optically opaque, as are all other surfaces of the hand-holdablehousing.

As illustrated in FIGS. 1, 3A and 3B in particular, automatic bar codereading device 2 generates a scan field external to the hand-holdablehousing, in order to carry out automatic bar code symbol readingaccording to the principles of the present invention. Specifically, ascan field, indicated by broken and dotted lines, is provided externallyto the housing for detecting the presence of a bar code symbol, and,once detected, for scanning the detected symbol. The scan field has atleast one scanning plane of essentially planar extent. Such scanning isachieved by controlling a beam of light, such as a laser beam.

In order to scan a bar code symbol on an object within the scan field, alight beam is generated within the head portion of the housing andscanned through the transmission aperture across the scan field. Withreference to FIG. 1, at least a portion of the scanned light beam willbe reflected off a bar code symbol situated in the scan field. Thisportion of the light beam is directed back towards and through thetransmission aperture 6 for collection, detection and subsequentprocessing in a manner which will be described in detail hereinafter.

FIG. 4 is a hardware block diagram setting forth various operativeelements which may be utilized by a bar code scanning device to providethe scan field depicted in FIGS. 3A and 3B. These elements may bepositioned within any of the hand-holdable housings shown in FIGS. 1–3B.As illustrated in FIG. 4, scanning mechanism 11 comprises a light source47 which, in general, may be any source of intense light suitablyselected for maximizing the reflectively from the object's surfacebearing the bar code symbol. In the illustrative embodiment, lightsource 47 comprises a solid-state visible laser diode (VLD) which isdriven by a conventional driver circuit 48. In the illustrativeembodiment, the wavelength of laser light produced from laser diode 47is about 670 nanometers. In order to scan the laser beam output fromlaser diode 47 over a scan field having a predetermined spatial extentin front of the head portion of the housing, a planar scanning mirror 49can be oscillated back and forth by a stepper motor 50 driven by aconventional driver circuit 51, as shown. However, one of a variety ofconventional scanning mechanisms may be alternatively used withexcellent results.

To selectively activate laser light source 47 and scanning motor 50, thesystem controller provides laser diode enable signal E_(L) and scanningmotor enable signal E_(M) as input to driver circuits 48 and 51,respectively. When enable signal E_(L) is a logical “high” level (i.e.,E_(L)=1), a laser beam is generated, and when E_(M) is a logical highlevel the laser beam is scanned through the transmission aperture andacross the scan field. When an object such as product bearing a bar codesymbol is within the scan field at the time of scanning, the laser beamincident thereon will be reflected. This will produce a laser lightreturn signal of variable intensity which represents a spatial variationof light reflectivity characteristic of the spaced apart pattern of barscomprising the bar code symbol. Photoreceiving circuit 12 is providedfor the purpose of detecting at least a portion of laser light ofvariable intensity, which is reflected off the object and bar codesymbol within the scan field. Upon detection of this scan data signal,photoreceiving circuit 12 produces an analog scan data signal D₁indicative of the detected light intensity.

In the illustrated embodiments, photoreceiving circuit 12 generallycomprises scan data collection optics 53, which focus optical scan datasignals for subsequent detection by a photoreceiver 54 having, mountedin front of its sensor, a wavelength selective filter 150 which onlytransmits optical radiation of wavelengths up to a small band above 670nanometers. Photoreceiver 54, in turn, produces an analog signal whichis subsequently amplified by preamplifier 55 to produce analog scan datasignal D₁. In combination, scanning mechanism 11 and photoreceivingcircuit 12 cooperate to generate scan data signals from the scan field,over time intervals specified by the system controller. As will beillustrated hereinafter, these scan data signals are used by bar codepresence detection module 14, bar code scan range detection module 15and symbol decoding module 16.

As illustrated in FIG. 4, analog scan data signal D₁ is provided asinput to A/D conversion circuit 13. As is well known in the art, A/Dconversion circuit 13 processes analog scan data signal D₁ to provide adigital scan data signal D₂ which resembles, in form, a pulse widthmodulated signal, where logical “1” signal levels represent spaces ofthe scanned bar code symbol and logical “0” signal levels represent barsof the scanned bar code symbol. A/D conversion circuit 13 can berealized by any conventional A/D chip. Digitized scan data signal D₂ isprovided as input to bar code presence detection module 14, bar codescan range detection module 15 and symbol decoding module 16.

The purpose and function of bar code presence detection module 14 is todetermine whether a bar code is present in or absent from the scan fieldover time intervals specified by the system controller. When a bar codesymbol is detected in the scan field, the bar code presence detectionmodule 14 automatically generates second control activation signal A₂(i.e., A₂=1) which is provided as input to the system controller, asshown in FIG. 4. Preferably, bar code presence detection module 14 isrealized as a microcode program carried out by the microprocessor andassociated program and buffer memory, described hereinbefore. Thefunction of the bar code presence detection module is not to carry out adecoding process but rather to simply and rapidly determine whether thereceived scan data signals produced during bar code presence detection,represent a bar code symbol residing within the scan field. There aremany ways in which to achieve this through a programming implementation.In the preferred embodiment, the aim of bar code presence detectionmodule 14 is to simply detect a bar code symbol “envelope”. This isachieved by first processing a digital scan data signal D₂ so as toproduce digitized “count” data and digital “sign” data. The digitalcount data is representative of the measured time interval (i.e.,duration) of each signal level between detected signal level transitionswhich occur in digitized scan data signal D₂. The digital sign data, onthe other hand, indicates whether the signal level between detectedsignal level transitions is either a logical “1”, representative of aspace, or a logical “0”, representative of a bar within a bar codesymbol. Using the digital count and sign data, the bar code presencedetection module then determines in a straightforward manner whether ornot the envelope of a bar code symbol is represented by the collectedscan data. When a bar code symbol envelope is detected, the bar codesymbol presence detection module provides second control activationsignal A₂=1 to the system controller. As will be described in greaterdetail hereinafter, second control activation signal A₂=1 causes thedevice to undergo a transition from the bar code presence detectionstate to the bar code symbol reading state.

The bar code presence detection module is provided with two differentmodes of operation, namely, a long range mode of bar code presencedetection and a short range mode of bar code presence detection. Asshown in FIG. 4, these modes are set by the system controller using modeselect enable signals E_(IRT)=0 and E_(IRT)=1, respectively. Wheninduced into the long range mode of operation, the bar code presencedetection module will generate second control activation signal A₂=1whenever the envelope of a bar code symbol has been detected, despitethe particular distance the bar code is from the transmission aperture.When induced into the short range mode of operation, the bar codepresence detection module will generate second control activation signalA₂=1 when the envelope of a bar code symbol has been detected and onlyif the associated count (i.e., timing) data indicates that the detectedbar code resides within the short range predetermined for bar codepresence detection. Notably, the long range specification for bar codepresence detection is preselected to be the entire operative scanningrange available to the device. In an illustrated embodiment, this rangecan be from about 0 to about 10 inches from the transmission aperture,depending on the optics employed in the scanning mechanism. This rangeis schematically indicated in FIGS. 3A and 3B.

Pursuant to one preferred embodiment, the short range specification forbar code presence detection is preselected to be the same range selectedfor short range object detection (e.g., approximately 0 to about 3inches from the transmission aperture), as indicated in FIGS. 3 and 3A.As will become apparent hereinafter, the inherently limited depth offield and width of field associated with the short range mode of barcode symbol detection prevents scanning mechanism 11 and bar code symboldetection module 14 from actuating the reading of undesired bar codesymbols in the scan field.

Unlike the bar code symbol presence detection module, the purpose andfunction of the bar code scan range detection module is not to detectthe presence of a bar code symbol in the scan field, but rather todetermine the range that a detected bar code symbol resides from thetransmission aperture of the bar code symbol reading device. This dataprocessing module operates upon digitized scan data signal D₂ collectedfrom a bar code symbol which has been previously detected by the barcode symbol presence detection module. In the preferred embodiment, barcode scan range detection module 15 analyzes digital count data producedby the bar code presence detection module, and determines at what range(i.e., distance) a detected bar code symbol resides from thetransmission aperture. This determination then permits the scan rangedetection module to determine whether the detected bar code symbol islocated within the prespecified long or short range of the scan field,as measured from the transmission aperture. As will be explainedhereinafter in greater detail, this information is used by the bar codepresence detection module (i.e., when induced into its short range modeof operation), to determine whether second control activation signalA₂=1 should be provided to the system controller. Upon the occurrence ofthis event, the bar code symbol reading device is caused to undergo atransition from the bar code symbol presence detection state to bar codesymbol reading.

The function of symbol decoding module 16 is to process, scan line byscan line, the stream of digitized scan data D₂, in an attempt to decodea valid bar code symbol within a predetermined time period allowed bythe system controller. When the symbol decoding module successfullydecodes a bar code symbol within the predetermined time period, symbolcharacter data D₃ (typically in ASCII code format) is producedcorresponding to the decoded bar code symbol. Thereupon a third controlactivation signal A₃=1 is produced by the symbol decoding module and isprovided to the system controller in order to perform its system controlfunctions.

Having described the detailed structure and internal functions of theautomatic bar code reading device of the illustrative embodiment, theoperation of its system controller will now be described with referenceto the laser beam intensity versus time characteristic shown in FIG. 5,the software flowchart of FIGS. 6A–6F, and the logic state diagram ofFIG. 7. Refer first to FIGS. 6A–6F. Beginning at the START block of theMain System Control Routine No. 1 shown in FIGS. 6A–6F and proceeding toBlock A, bar code symbol reading device 2 is initialized. This involvescontinuously activating (i.e., enabling) the system controller. Thesystem controller, on the other hand, deactivates (i.e., disables) theremainder of activatable system components, e.g., laser diode 47,scanning motor 50, photoreceiving circuit 12, A/D conversion circuit 13,bar code presence detection module 14, bar code scan data rangedetection module 15, symbol decoding module 16, data format conversionmodule 17, data storage unit 18, and data transmission circuit 19. Alltimers T₁, T₂, T₃, T₄ and T₅ maintained by the system controller arereset to t=0.

Proceeding to Block C, timer T₁ is started and is permitted to run for apreset time period, e.g., O (less than or equal to) T₁ (less than orequal to) 3 seconds, and timer T₂ is started and permitted to run for apreset time period 0.1 (less than or equal to) T₂ (less than or equalto) 5 seconds. Proceeding to Block D, the system controller activateslaser diode 47, scanning motor 50, photoreceiving circuit 12, A/Dconversion circuit 13 and bar code presence detection module 14 in orderto collect and analyze scan data signals for the purpose of determiningwhether or not a bar code is within the scan field.

Next, at Block E, the system controller checks to determine whethercontrol activation signal A₂=1 is received from bar code presencedetection module 14 within time period t<T₁=3 seconds. If activationcontrol signal A₂=1, is not received within this period, indicative thata bar code is not within the scan field, then the system controllerproceeds to Block F. At Block F, the system controller deactivates laserdiode 47, scanning motor 50, photoreceiving circuit 12, A/D conversioncircuit 13 and bar code presence detection module 14. Then the systemcontroller returns to the START block.

If, however, the system controller receives control activation signalA₂=1 within a time period given by O (less than or equal to) T₁ (lessthan or equal to) 3 seconds, indicative that a bar code has beendetected, then the system controller proceeds to Block H. As will bedescribed hereinafter, this represents a state transition from bar codepresence detection to bar code reading. Proceeding to Block H, thesystem controller continues activation of laser diode 47, scanning motor50, photoreceiving circuit 12, and A/D conversion circuit 13, andcommences activation of symbol decoding module 14. At this stage, freshbar code scan data is collected and is subject to decode processing. Atessentially the same time, at Block I, the system controller startstimer T₃ to run for a time period O (less than or equal to) T₃ (lessthan or equal to) 1 second.

As indicated at Block J, the system controller checks to determinewhether control activation signal A₃=1 is received from the symboldecoding module 16 within T₃=1 second, indicative that a bar code symbolhas been successfully read (i.e., scanned and decoded) within theallotted time period. If control activation signal A₃ is not receivedwithin the time period T₃=1 second, then at Block K the systemcontroller checks to determine whether control activating signal A₂=1 isreceived within a time period given by O (less than or equal to) T₃(less than or equal to) 3 seconds. If a bar code symbol is not detectedwithin this time period T₃, then the system controller proceeds to BlockL to deactivate laser diode 47, scanning motor 50, photoreceivingcircuit 12, A/D conversion circuit 13, bar code presence detectionmodule 14 and symbol decoding module 16. Notably, this event causes astate transition from bar code reading to bar code presence detection.Thereafter, the system controller returns to the START block, as shown.

If however, at Block K, the system controller receives controlactivation signal A₂=1, indicative that a bar code once again is withinthe scan field, then the system controller checks to determine whethertime period T₂ has elapsed. If it has, then the system controllerproceeds to Block L and then to the START block. If, however, a timeperiod given by O (less than or equal to) T₂ (less than or equal to) 5seconds has not elapsed, then the system controller resets timer T₃ torun once again for a time period 0 (less than or equal to) T₃ (less thanor equal to) 1 second. In essence, this provides the device at leastanother opportunity to read a bar code present within the scan fieldwhen the system controller is at control Block J.

Upon receiving control activation signal A₃=1 from symbol decodingmodule 16, indicative that a bar code symbol has been successfully read,the system controller proceeds to Block O. At this stage of the systemcontrol process, the system controller continues to activate laser diode47, scanning motor 50, photoreceiving circuit 12 and A/D conversioncircuit 13, while deactivating symbol decoding module 16 and commencingactivation of data format conversion module 17, data storage unit 18 anddata transmission circuit 19. These operations maintain the scanning ofthe laser beam across the scan field, while symbol character data isappropriately formatted and transmitted to data collection device 3, ora host device, by a conventional data communication process well knownin the art.

After transmission of symbol character data to the host device iscompleted, the system controller enters Block P and continues activationof laser diode 47, scanning motor 50, photoreceiving circuit 12 and A/Dconversion circuit 13, while deactivating symbol decoding module 16,data format-conversion module 18, data storage unit 18 and datatransmission circuit 19. Next, at Block R the system controlleractivates bar code presence detection module 14. These events representonce again a state transition from the symbol character transmissionstate to the bar code symbol presence detection state.

At Block S, the system controller starts timer T₄ to run for a timeperiod given by O (less than or equal to) T₄ (less than or equal to) 5seconds, and timer T₅ to run for a time period O (less than or equal to)T₅ (less than or equal to) 3 seconds. Then, so as to determine whether abar code symbol has been detected within the scan field, the systemcontroller proceeds to Block T to check whether control activationsignal A₂=1 is received. If this signal is not received with the timeperiod O (less than or equal to) T₅ (less than or equal to) 5 seconds,indicative that no bar code symbol is present in the scan field, thesystem controller proceeds to Block U, at which it deactivates laserdiode 47, scanning motor 50, photoreceiving circuit 12, A/D conversioncircuit 13 and bar code presence detection module 14. Thereafter, thesystem controller returns to the START block, as shown.

If, however, at Block T control activation signal A₂=1 is received,indicative that a bar code symbol has been detected in the scan field,the system controller proceeds through Blocks W and X to reactivate thesymbol decoding module and start timer T₆ to run for a time period O(less than or equal to) T₆ (less than or equal to) 1 second. Theseevents represent a state transition from bar code symbol presencedetection to bar code symbol reading. At Block Y, the system controllerchecks to determine whether control activation signal A₃=1 is receivedfrom signal decoding module 16 within time period O (less than or equalto) T₆ (less than or equal to) 1 second. If a bar code symbol is notsuccessfully read within this 1 second time period, the systemcontroller returns to Block T to form a first loop, within which thedevice is permitted to detect or redetect a bar code symbol within thetime period O (less than or equal to) T₄ (less than or equal to) 5seconds. If a bar code symbol is decoded within this time interval, thesystem controller determines at Block Z whether the decoded bar codesymbol is different from the previously decoded bar code symbol. If itis different, then the system controller returns to Block O asillustrated, to format and transmit symbol character data as describedhereinabove.

If, however, the decoded bar code symbol is not different than thepreviously decoded bar code symbol, then at Block AA the systemcontroller checks to determine whether timer T₄ has lapsed. If it hasnot lapsed, the system controller returns to Block T to form a secondloop, within which the device is permitted to detect or redetect a barcode symbol in the scan field and then successfully read a valid barcode symbol within the set time interval O (less than or equal to) T₄(less than or equal to) 5 seconds. If, however, timer T₄ lapses, thenthe system controller proceeds to Block BB at which the systemcontroller deactivates laser diode 47, scanning motor 50, photoreceivingcircuit 12, A/D conversion circuit 13, bar code presence detectionmodule 14, and symbol decoding module 16. Thereafter, the systemcontroller returns to the START block.

Pursuant to the operational sequence of FIGS. 6A–6F, whenever theflicker sensitive bar code presence detection state is entered(corresponding to an activation of the bar code presence detectionmodule by the system controller), the visible laser beam emitted fromvisible laser diode 50 comprises a plane of pulsed laser light which“flickers” or “blinks” at a flicker sensitivity rate R_(FLICKER) equalto 1/T_(FLICKER), where T_(FLICKER) equals T₂+T_(Laseroff), T₂ equalsthe time length of timer T₂, and T_(Laseroff) equals the time periodthat laser diode 50 is intermittently deenergized during the elapsedtime period of timer T₁. During this bar code presence detection state,the flickering nature of the laser scanning beam significantly improvesthe user's visual perceptibility thereof as it is scanned across thedetected object while the user attempts to visually register (i.e.align) the laser beam with the bars and spaces of a bar code symbol onthe detected object. The improvement in the visual perceptibility of theflickering laser scanning beam is manifested by the fact that theflickering laser scanning beam is more visually conspicuous than a likelaser beam of constant luminosity or intensity. This psychological andphysiological phenomenon is due to the low frequency pulsed nature ofthe laser scanning beam.

While it is understood in the ophthamological art that the human visualsystem is more sensitive to light flickering below about 16 Hz thanlight of constant luminosity (i.e. intensity), no one in the bar codesymbol scanning art has ever recognized or appreciated that thisprinciple could be utilized to solve the visual perceptibility problemoccurring in automatic hand-held laser bar code symbol scanners. Thepresent invention solves the laser scanning beam perceptibility problemin a highly effective manner by applying the principle of “psychologicaland physiological flicker sensitivity” to the construction of theautomatic laser bar code symbol scanner of the present invention.Specifically, by causing the intensity of the visible laser scanningbeam to flicker at a rate R_(FLICKER) greater than about 0.10 Hz andless than about 16 Hz, the visual conspicuousness of the laser scanningbeam can be significantly improved, while advantageously decreasing theoutput power of laser diode 50.

Refer now to FIG. 5, which is a graph showing laser beam intensity as afunction of time as determined by the bar code presence detectionmodule. In any particular embodiment of the present invention, theflicker frequency of the visible laser scanning beam can be selectedusing the following procedure. First, a value will be selected for timeperiod T₂ which provides sufficient time for the bar code symbol readerto capture multiple lines of scan data from the bar code symbol. Thisselection will depend on the scanning velocity of the laser beam, thecollection optics and data processing considerations. Then, for anyselected value of T₂, the laser-off time period T_(Laseroff) can beselected so that a desired value of R_(FLICKER) within the range ofabout 0.1 to about 16 Hz, is obtained. Then by setting parameters T₂ andT_(Laseroff) in the system controller, the desired flicker frequencywill automatically be set within the automatic bar code symbol scanner.

Although specific values have been provided for timers T₁, T₂, T₃, T₄,and T₅ in FIGS. 6A–6F, it is to be clearly understood that these valueshave been recited for illustrative purposes only, as various othersuitable values could be selected for these timers, based upon therequirements of specific or general system applications.

Having described the operation of the illustrative embodiment of theautomatic hand-supportable bar code reading device of the presentinvention, it will be helpful to describe at this juncture the variousconditions that cause state transitions to occur during operation. Refernow to FIG. 7, which is a state transition diagram prepared inaccordance with the operational sequence of FIGS. 6A–6F. Duringoperation, the bar code reading device is in one of three states: aflicker sensitive bar code presence detection state (B), a symbolcharacter transmission state (C), and a bar code symbol reading state(D). These states are entered based upon the status of various timersand control activation signals, as was described above in connectionwith FIGS. 6A–6F. More specifically, transitions between the variousstates are indicated by directional arrows. Besides each set ofdirectional arrows are transition conditions expressed in terms ofcontrol activation signals (e.g. A₁, A₂, and A₃), and where appropriate,state time intervals (T₁, T₂, T₃, T₄, and T₅). Conveniently, the statediagram of FIG. 7 expresses most simply the three basic operationsoccurring during the control flow within the system control program ofFIGS. 6A–6F. Significantly, the control activation signals. A₁, A₂, andA₃ in FIG. 7 indicate which events within the scan field can operate toeffect a state transition within the allotted time frame(s), whereprescribed.

At the outset, the flicker-sensitive bar code presence detection state(state B) is engaged to determine the presence of a bar code in the scanfield. Optionally, the system controller can be programmed to determinethe presence of a bar code in a short-range mode of operation and/or along-range mode of operation, as selected by the user, and/or based uponthe presence or absence of the scanning device in an associated stand,and/or by scanning a special programming bar code symbol. During stateB, the system controller activates bar code presence detection module 20and bar code scan range detection module 21. Illustratively, atransition from the bar code presence detection state to the bar codesymbol reading state may be allowed only if the detected bar code symbolresides within the short range portion of the scan field. This conditionis satisfied by the scan range detection module determining whether ornot the digital count data of the detected bar code symbol falls withina prespecified short-range count interval.

The operation of automatic hand-supportable bar code reading device 2has been described in connection with a process that uses controlactivation signals A₂ and A₃. This system control routine operates on abasic assumptions concerning bar code symbol presence detection module20. Specifically, the Main System Control Routine assumes that the barcode symbol presence detection module produces control activation signalA₂=1 whenever a bar code symbol is detected anywhere within theoperative scanning range of the scan field. This assumption causes statetransitions during the operation of the automatic bar code symbolreading device, when otherwise they may not be desired in particularapplications. For example, in some applications it may not be desirableto automatically advance to the bar code symbol reading state until adetected bar code symbol is located within the short-range portion ofthe scan field. Also, it may not be desirable to automatically advanceto the symbol character data storage/transmission state until a decodedbar code symbol is located within the short-range portion of the scanfield. Thus, in some instances, it may be desirable to conditiontransition from (i) object detection to the bar code symbol detectionstate, (ii) the bar code symbol detection state to the bar code symbolreading state, and (iii) the bar code symbol reading state to the symbolcharacter data storage/transmission state. Yet, in other instances, itmay only be desirable to condition only one or two of these statetransitions.

Refer now to FIGS. 1, 8A, 8B, and 8C which set forth perspective viewsof an illustrative bar code scanner configured to provide adjustablelong and short range modes of bar code symbol presence detection. Inorder to select either the long or short range mode, bar code symbolreading device 2 is provided with both manual and automated mechanismsfor effectuating such selections. In the manual mechanism, a manualswitch (e.g., step button) 21 (FIG. 1) is mounted onto the top surfaceof the handle portion of the housing, so that long and short range modesof object detection can be simply selected by depressing this switchwith ones thumb while handling the bar code reading device. The switchgenerates and provides mode activation signal A₄ to the systemcontroller, which in turn generates the appropriate mode enable signalE_(IRT).

In the automated mechanism, housing support stand detection mechanism20, realized as a magnetic field sensing circuit, is operably associatedwith the system controller to automatically generate mode activationsignal A₄, when the hand-holdable housing is not, for example, beingsupported within a housing support stand 57 (FIG. 8A) which bears apermanent magnetic 58 disposed in proximity with the housing supportsurfaces 59A and 59B, illustrated in FIGS. 8A to 8C. Preferably, avisual indicator light is provided to the housing to visually indicatethe particular mode which has been selected manually or automatically.

In general, magnetic sensing circuit 20 comprises a magnetic fluxdetector 60, a preamplifier and a threshold detection circuit. Magneticflux detector 60 produces as output an electrical signal representativeof the intensity of detected magnetic flux density within the proximityof the detector. When housing 5 is placed in housing support stand 57,as shown in FIG. 8A, magnetic flux detector 60 will be in position todetect flux from permanent magnet 58. The produced electrical signal isamplified by the preamplifier whose output is compared to apredetermined threshold maintained in the threshold detector circuit. Ifthe intensity of the detected magnetic flux exceeds the threshold,long-range mode activation signal A₄=1 is provided to the systemcontroller.

As illustrated in FIG. 2, magnetic flux detector 60 is mounted to therearward underside surface of the handle portion of the housing. In thisillustrated embodiment, a ferrous bar 61 is mounted interiorly to theunderside surface of the housing handle portion as shown. Thisarrangement facilitates releasable magnetic attachment of thehand-holdable housing to magnetic bar 58 fixedly installed in housingsupport stand 57. Preferably, a hole 62 is drilled through ferrous bar61 to permit installation of magnetic flux detector 60 so that magneticflux emanating from magnetic bar 58 is detectable when the housing ispositioned within housing support stand 57, as shown in FIG. 8A. In thisconfiguration, magnetic flux detector 60 is in proximity with magneticbar 58 and long range mode activation signal A₄=1 is produced andprovided to the system controller. In response, the system controllerenables long range object detection (i.e., E_(IRT)=0) when thehand-holdable housing is removed from the housing support stand 57 asshown in FIG. 8B, the magnetic flux from magnetic bar 58 is no longersufficient in strength to produce long range mode activation signalA₄=1; instead, the short range mode activation signal A₄=0 is producedand provided to the system controller. In response, the systemcontroller enables the short range mode of object detection (i.e.,E_(IRT)=1), as illustrated in FIG. 8C.

It is understood that there are a variety of ways in which to configurethe above described system components within the housing of theautomatic bar code symbol reading device, while successfully carryingout of functions of the present invention. In FIGS. 2 and 2A, onepreferred arrangement is illustrated. In FIG. 2A, the opticalarrangement of the system components is shown. Specifically, visiblelaser diode 47 is mounted in the rear corner of circuit board 64installed within the head portion of the housing. A stationary concavemirror 53 is mounted centrally at the front end of circuit board 63,primarily for collecting laser light. Notably, the height of concavemirror 53 is such not to block transmission aperture 6. Mounted offcenter onto the surface of concave mirror 53, is very small secondmirror 64 for directing the laser beam to planar mirror 49 which isconnected to the motor shaft of a scanning motor 50, for jointoscillatory movement therewith. As shown, scanning motor 50 is mountedcentrally at the rear end of circuit board 63. In the opposite rearcorner of circuit board 63, photodetector 54 is mounted.

In operation, laser diode 47 adjacent the rear of the head portion,produces and directs a laser beam in a forward direction to the smallstationary mirror 64 and is reflected back to oscillating mirror 49.Oscillating mirror 49 scans the laser beam over the scan field. Thereturning light beam, reflected from the bar code symbol, is directedback to oscillating mirror 49, which also acts as a collecting mirror.This oscillating mirror then directs the beam to stationary concavemirror 53 at the forward end of the housing head portion. The beamreflected from the concave mirror 53 is directed to photodetector 54 toproduce an electrical signal representative of the intensity of thereflected light.

In front of stationary concave mirror 53, IR LED 28 and photodiode 31are mounted to circuit board 63, in a slightly offset manner fromlongitudinal axis 9 of the head portion of the housing. Apertures 65 and66 are formed in opaque portion 7B of the housing below the transmissionaperture, to permit transmission and reception of IR type object sensingenergy, as described above.

In order to shield IR radiation from impinging on photodiode 31 via thehousing, a metallic optical tube 67 having an aperture 68 encasesphotodiode 31. By selecting the size of aperture, the placement ofphotodiode 31 within optical tube 67 and/or the radiation responsecharacteristics of the photodiode, desired geometric characteristics forthe object detection field can be achieved, as described hereinbefore.To prevent optical radiation slightly below 670 nanometers from enteringthe transmission aperture 6, a plastic filter lens 69 is installed overthe transmission aperture for transmitting only optical radiation havingwavelengths from slightly below 670 nanometers, and thus blocking thetransmission of light having wavelengths below this range, from passingthrough the light transmission aperture. Notably, in this way thecombination of filter lens 69 at the transmission aperture andwavelength selective filter 150 before photoreceiver 54 cooperate toform a narrow band-pass optical filter having a center wavelengthλ_(c)=670 nanometers, which is located in the visible band of theelectromagnetic spectrum. This arrangement provides improvedsignal-to-noise ratio for detected scan data signals D₁, while theplastic filter lens 69 appears red to the human eye by virtue of thefact that plastic filter lens 69 only permits transmission of opticalradiation from slightly below 670 nanometers. The use of a wavelength of670 nanometers is illustrative, as other wavelengths could also be used.

FIGS. 9A to 9C illustrate a System Control Routine which provides theautomatic bar code symbol reading devices of the present invention withrange selection capabilities for both object and bar code presencedetection. Two of the diverse functions provided, when the systemcontroller runs this System Control Routine, are illustrated in FIGS. 8Athrough 8C. Notably, the System Control Routine of FIGS. 9A to 9Cutilizes Main System Control Routine No. 1 of FIGS. 6A–6F which has beendescribed above. It is understood, however, that it may be adapted foruse with other system control programs, such as Main System ControlRoutine No. 2 of FIGS. 12A to 12C, to be described hereinafter inconnection with a second illustrative embodiment.

Although the operational sequence of FIGS. 9A–9C uses range-selectableobject detection and bar code presence detection, the use ofrange-selectable object detection is optional. Moreover, the use of anyobject detection mechanism whatsoever is also optional and not required.Pursuant to the techniques of the present invention, only bar codepresence detection need be employed, either with or without objectdetection. Beginning at the START block and proceeding to Block A′ ofFIG. 9A, the system controller initially selects the long range objectdetection mode by letting the IR sensing circuit to operate at fullsensitivity (i.e., E.sub.IRT=O). To determine if the short range mode ofobject and bar code symbol presence detection has been selected, thesystem controller proceeds to Block B′ and determines whether it hasreceived control activation signal A₄=1. As described above inconnection with FIG. 4, activation signal A₄=1 can be generated in atleast two possible ways. For example, the short range mode of object andbar code presence detection may be manually selected by depressingswitch 21 on the housing using the ones thumb. Alternatively, the shortrange mode may be selected by lifting the device out from housingsupport stand 57, as illustrated in FIG. 7B. In either case, prior tooperating the symbol reading device, either the manual or automaticmechanism for the mode selection is set with the system controller.

If control activation signal A₄=1 is received at Block B′, then thesystem controller selects short range object detection by desensitizingthe IR sensing circuit. This is achieved by providing mode selectionenable signal E_(IRT)=1 as hereinbefore described. Then proceeding toBlock D′, the system controller enters the START block of Main SystemControl Routine of, for example, FIGS. 8A and 8B. Thereafter, thecontrol flow proceeds as prescribed by the Main System Control RoutineNo. 1. Notably, whenever the control flow in the Main System ControlRoutine returns to the START block, the system controller will exit MainSystem Control Routine No. 1 and return to the START block of the SystemControl Routine of FIGS. 9A and 9B.

As illustrated at Block E′ of FIG. 9B, whenever the control flow is atBlocks D, I or R in the Main System Control Routine, the systemcontroller activates bar code presence detection 14 module and bar codescan range detection module 15. Thereafter, while at any one of thesecontrol blocks, the bar code scan range detection module processes scandata signal D₂ so as to produce digital count and sign data ashereinbefore described. As indicated at Block F′, an additionalcondition is placed on control Blocks E, K and T in the Main SystemControl Routine, so that a transition from the bar code presencedetection state to the bar code reading state occurs only if (i) theobject is detected in the short range portion of the object detectionfield and (ii) the bar code is detected in the short range portion ofthe scan field. Specifically, when at any one of such blocks in the MainSystem Control Routine and the system controller receives controlactivation signal A₂=1, then the system controller will also determinewhether the digital count data of the detected bar code is within theshort range count interval. If the digital count data produced indicatesthat the detected bar code symbol is not located within the prespecifiedshort range of the scan field, then as indicated at Block H′ of FIG. 9B,the system controller proceeds to Blocks F, L or U, respectively, in theMain System Control Routine. If, however, the digital count dataproduced indicates that the detected bar code symbol is located withinthe short range of the scan field, then as indicated at Block G′ of FIG.9C, the system controller proceeds to Blocks H, N or W, respectively, inthe Main System Control Routine. In such instances, detection of a barcode symbol in the scan field is insufficient to effect a statetransition to the bar code reading.

Turning attention to Block B′ of FIG. 9A, the system controller may notreceive control activation signal A₄=1 from IR sensing circuit, asindicated at this block. In some embodiments neither switch 21 ormagnetic field sensing circuit 20 may be activated, or provided in theautomatic bar code reading device. In such embodiments having short/longrange selection capabilities, symbol decoding module 16 can be adaptedto recognize predesignated bar code symbols which automatically activateand deactivate long and/or short range modes of object and/or bar codepresence detection. As will become apparent hereinafter, this type ofautomatic mode selection is highly advantageous when reading, forexample, bar coded menus and the like.

As indicated at Block I′ of FIG. 9A, absent receipt of controlactivation signal A₄=1 at Block B′, the system controller selects (i.e.,maintains) the long range object detection mode by letting IR sensingcircuit 10A operate at full sensitivity (i.e., E_(IRT)=O). Then at BlockJ′, the system controller enters the START block of Main System ControlRoutine of FIGS. 8A and 8B, as hereinbefore described in connection withBlock D′ of FIG. 9B. As indicated at Block K′, before entering Block Oof the Main System Control Routine, the system controller determineswhether the successfully read bar code symbol is a bar code which hasbeen predesignated to activate the short range bar code presencedetection mode. This is achieved by checking to see whether the systemcontroller receives mode activation signal A₄=1 from symbol decodingmodule 16 as shown in FIG. 4. If mode activation signal A₄=0 is receivedby the system controller, then as indicated at Block L′ the systemcontroller proceeds to Block O of the Main System Control Routine. If,however, mode activation signal A₄=1 is received, then, as indicated atBlock M′, the system controller selects the short range mode of objectdetection by desensitizing IR sensing circuit 10A (i.e., E_(IRT)=O).This operation ensures that control activation signal A₁ is producedonly when an object is detected within the short range of the objectdetection field, as illustrated in FIGS. 3 and 3A.

As indicated at Block N′ of FIG. 9B, the short range mode of bar codepresence detection is indicated by the system controller by activatingboth bar code presence detection module 14 and bar code scan rangedetection module 15 whenever the system controller is at Block D, I orR, respectively, in the Main System Control Routine. In this way, thebar code scan range detection module analyzes digital sign and countdata from each detected bar code system to determine the range of thedetected bar code in the scan field.

As indicated at Block O′, an additional condition is placed on controlBlocks E, K and T in the Main System Control Routine. This conditionensures that a transition from the bar code presence detection state tothe bar code reading state occurs only if the object is detected in theshort range portion of the object detection field and the bar codesymbol is detected in the short range portion of the scan field. This isachieved by requiring the system controller to determine whether or notthe digital count data of the detected bar code is within theprespecified short range count interval. If the digital count data ofthe detected bar code symbol is not within the short range countinterval, then as indicated at Block O′, the system controller proceedsto control Blocks F, L or U, respectfully, in the Main System ControlRoutine as previously indicated in Block H′. If, however, the digitalcount data is within the prespecified short range count interval, thenmode activation control signal A_(4B)=1 is provided to the systemcontroller as illustrated in FIG. 4. In this instance, A_(4A)=1 andA_(4B)=1, and thus bar code presence detection module 14 providescontrol activation signal A₂=1 to the system controller in order toeffectuate a transition to the bar code symbol reading state. Theseevents are represented at Block P′ of FIG. 9C by the system controllerproceedings to Blocks H, N or Y, respectively, in the Main SystemControl Routine.

Next, as indicated at Block Q′ of FIG. 9C, the system controller checksto determine whether the successfully read bar code symbol is a bar codepredesignated to deactivate the short range detection mode. If the readbar code symbol is a short-range mode deactivation bar code, then asindicated at Block R′, the system controller selects the long rangeobject detection mode by letting IR sensing circuit 10A operate at fullsensitivity (i.e., E_(IRT)=0). Then, as indicated at Block S′, systemcontroller exits Main System Control Routine No. 1 and returns to theSTART block of System Control Routine of FIGS. 9A to 9C. If, however,the read bar code symbol is not a short range mode deactivation barcode, then as indicated at Block T′, the system controller proceeds toBlock O in the Main System Control Routine. The bar code symbol readingdevice of the present invention will then remain in the short-rangedetection mode until it reads a short-range mode deactivation symbol.

Referring now to FIGS. 1 and 10A through 13, a second embodiment of theautomatic bar code reading device of the present invention will bedescribed. Automatic bar code symbol reading device 2′ includes ahand-holdable housing illustrated in FIGS. 1, 3 and 3A as describedabove. Note that similar structures or elements are indicated with likereference numerals throughout the various accompanying figures. The scanfields produced by devices constructed in accordance with the secondembodiment are essentially identical to those of the first embodiment ina functional sense, although these fields may or may not differ from ageometrical perspective.

As illustrated in FIG. 10B, the geometrical characteristics of the scanfield provided in bar code reading device 2′ in three-dimensional spaceis essentially the same as that which was previously described inconnection with FIGS. 3 and 3A. However, a scan field configured asshown in FIGS. 3, 3A and 10B is set forth for illustrative purposesonly, as the use of other scan fields having different geometricalcharacteristics is a matter within the knowledge of a skilled artisan.

To more fully appreciate the mechanisms employed in providing the scanfield of bar code symbol reading device 2′, reference is best made tothe various operative elements within the hand-holdable housing. Asshown in FIG. 11, a bar code symbol reading device constructed inaccordance with a second illustrative embodiment comprises similarsystem components as were utilized in the first illustrative embodimentschematically represented in FIG. 4. Thus, similar elements areindicated with like reference numerals throughout these drawings.Notably, however, there are several significant structural differenceswith respect to laser scanning circuit 11′ and photoreceiving circuit12′ which will be pointed out below.

As illustrated in FIG. 11, scanning circuit 11′ comprises a solid-statevisible laser diode 47 which is driven by a conventional VLD drivercircuit 48. In order to scan the laser beam output from laser diode 47over a scan field having a predetermined spatial extent in front of thehousing head portion, a polygonal scanning mirror 71 is rotated ateither a low or high angular velocity (i.e., speed) by scanning motor 72driven by a dual speed driver circuit 73, as shown.

To selectively activate laser diode 47, the system controller provideslaser enable signal E_(L) to laser driver circuit 48, whereas toactivate scanning motor 72 at high or low speed, the system controllerprovides scanning motor driver circuit 73 motor enable signals E_(MH) orE_(ML), respectively. With this scanning arrangement, the systemcontroller can selectively operate scanning circuit 11′ andphotoreceiving circuit 12′ in at least two ways. For example, when isE_(L)=1 and motor enable signals are E_(MH)=1 and E_(ML)=O, a laser beamis generated from laser diode 47 and polygonal scanning mirror 71 isrotated at high speed. In response, the laser beam is scanned throughthe transmission aperture and across the scan field at a scan-line rateproportional to the speed of the scanning motor and the radial distanceof the beam from the scanning mirror surface. Alternatively, using thisscanning mechanism, polygonal scanning mirror 71 can be rotated at aslow speed while laser diode 47 is deactivated. This can be achieved bythe system controller providing laser enable signal E_(L)=O to laserdriver circuit 48′ and motor enable signals E_(MH)=O and E_(ML)=1 todriver circuit 73. The utility of this latter scanning function willbecome apparent hereinafter.

In FIG. 10A, the optical arrangement of the system components for thesecond illustrative embodiment is shown. Specifically, visible laserdiode 47 is mounted in the rear corner of circuit board 75, installedwithin the head portion of the housing. A stationary concave mirror 76is mounted controlling at the first end of the circuit board, forprimarily collecting laser light. Notably, the height of concave mirror76 is such as not to block transmission aperture 6. Mounted off centeronto the surface of concave mirror 76, is a very small second mirror 77for directing incident laser beam from laser diode 47 to polygonalmirror 71 which is connected to the shaft of scanning motor 72, forjoint rotational movement therewith. As shown, scanning motor 72 ismounted centrally at the rear end portion of the circuit board. In theopposite rear corner of the circuit board, photoreceiver 54 is mountedas shown. In front of photoreceiver diode 54 and essentially along theoptical axis of concave mirror 76, an optical element 78, such as aconcave lens, can be provided to assist concave mirror 76 in focusingcollected laser return light onto the photoreceiver. If necessary, lens78 can be treated so as to filter out IR energy collected through thecollection optics of the system.

To appreciate the functionality of the optical arrangement featured inFIG. 10B, its operation will be described below in connection with barcode symbol presence detection and bar code reading. During bar codepresence detection and reading operations, laser diode 47 andphotoreceiving circuit 12′ are activated, while scanning motor 72 isdriven at high speed. In this way, laser diode 47 produces a laser beamthat is directed in a forward direction onto small stationary mirror 77and is reflected back to rotating polygonal mirror 71. Rotatingpolygonal mirror 71 scans the laser beam across the scan field. Thereturning laser light beam reflected from the bar code, is directed backonto rotating polygonal mirror 71 which also acts as a collectingmirror. This rotating mirror directs the beam to stationary concavemirror 76 at the forward end of the housing head portion. The beamreflected from concave mirror 76 is directed to photoreceiver 47 toproduce an electrical signal representative of the intensity of thereflected light. An optional optically diffractive or optically focusingprojection, detent, or small lens 79 may be mounted to, within, orformed as part of transmission aperture 6.

In FIGS. 10C and 10D, an alternative optical signal collection andprocessing arrangement for automatic bar code symbol reader 2′ is shown.Notably, similar structure or elements shown in FIGS. 10A through 10Dare indicated by like reference numbers. According to this alternativeembodiment, during time intervals determined by the system controller(as indicated in FIGS. 12A and 12B), laser return light from the scanfield will be (i) passed through wavelength selective transmissionwindow 110; (ii) collected through common optical elements 71 and 76;(iii) passed through wavelength selective optical filter system 111;(iv) focused by focusing lens 112; (v) detected by photoreceiver 54; andsubsequently converted and amplified by current-to-voltage amplifier 113and preamplifier 114. Using a laser beam having a wavelength of about670 nanometers, the wavelength transmission characteristics oftransmission window 110 and optical filter system 112 will be selectedso as to effectively produce a pass-band for transmission of laserreturn light to photoreceiver 54. The pass-band may be centered about670 nanometers for laser return light. In an illustrative embodiment,optical filter system 111 can be realized by one or more dielectric orother type filters, the nature of which is well known in the art. Anoptional IR object detector may be employed, providing its output tosynchronous transmitter receiver 27. In this case, as previouslydescribed, one output of synchronous transmitter receiver 27 is controlactivation signal A₁ which is provided to the system controller.

The detected analogue scan data signal D₁, produced from preamplifier114 during bar code presence detection and bar code reading, is providedto A/D conversion unit 13 for signal conversion as hereinbeforedescribed. In order that common signal processor 115 is operative duringthe bar code presence detection and bar code reading states, the systemcontroller continuously provides enable signal E_(CPE)=1 to commonsignal processor 115, as shown. However, during the bar code presencedetection and bar code reading states, the system controller provides IRdisable signal E_(IRD)=1 to IR transmitting and receiving circuit 116,in order to disable the operation thereof Aside from the above describedmodifications to automatic bar code symbol reading device 2′, the systemcontroller of this illustrative embodiment will operate in generalaccordance with the system control program of FIGS. 12A to 12E.

Having described the detailed structure and internal functions of theautomatic bar code symbol reading device of the second illustrativeembodiment of the present invention, the operation of the systemcontroller thereof will now be described with reference to Blocks Athrough CC in FIGS. 12A to 12E and the system block diagram shown inFIG. 11.

Beginning at the START block of Main System Control Routine No. 2 andproceeding to Block A, bar code symbol reading device 2′ is initialized.This involves continuously activating (i.e., enabling) the systemcontroller. The system controller, on the other hand, activates optionalIR sensing circuit 10 with scanning motor 72 driven at low speed. Inaddition, the system controller deactivates the remainder of activatablesystem components, e.g., laser diode 47, photoreceiving circuit 12′, A/Dconversion circuit 13, bar code presence detection module 14, bar codescan data range detection module 15, symbol decoding module 16, dataformat conversion module 17, data storage unit 18, and data transmissioncircuit 19. All timers T₁, T₂, T₃, T₄ and T₅ maintained by the systemcontroller are reset to t=0.

Proceeding to Block B, the system controller checks to determine whethercontrol activation signal A₁=1 is received from optional IR sensingcircuit 10. If this signal is not received, then the system controllerreturns to the START block. If signal A₁=1 is received, indicative thatan object has been detected within the object detection field, then thesystem controller proceeds to Block C, at which timer T₁ is started andis permitted to run for a preset time period, e.g., O (less than orequal to) T₁ (less than or equal to) 3 seconds, and timer T₂ is startedand permitted to run for a preset time period 0 (less than or equal to)T₂ (less than or equal to) 5 seconds.

Proceeding to Block D, the system controller activates laser diode 47,scanning motor 72 driven at high speed, photoreceiving circuit 12′, A/Dconversion circuit 13 and bar code presence detection module 14 in orderto collect and analyze scan data for the purpose of determining whetheror not a bar code resides within the scan field. Then, at Block E, thesystem controller checks to determine whether control activation signalA₂=1 is received from bar code presence detection module 14 within timeperiod 1 (less than or equal to) T₁ (less than or equal to) 3 seconds.If activation control signal A₂ is not received within this time period,indicative that a bar code is not within the scan field, then the systemcontroller proceeds to Block F. At Block F, the system controllerdeactivates laser diode 47, scanning motor 72 driven at high speed,photoreceiving circuit 12′, A/D conversion circuit 13 and bar codepresence detection module 14. In addition, the system controllerreactivates IR sensing circuit 10A and scanning motor 72 driven at slowspeed. Then the system controller remains at Block G until it receivescontrol activation signal A₁=0 from the IR sensing circuit, indicativethat the object is no longer in the object detection field. The systemcontroller returns to the START block.

If, however, the system controller receives control activation signalA₂=1 within time period O (less than or equal to) T₁ (less than or equalto) 3 seconds, indicative that a bar code has been detected, then thesystem controller proceeds to Block H. As will be described hereinafter,this represents a state transition from bar code presence detection tobar code reading. Proceeding to Block H, the system controller continuesactivation of laser diode 47, scanning motor 72, photoreceiving circuit12′ and A/D conversion circuit 13, and commences activation of symboldecoding module 16. At this stage, fresh bar code scan data is collectedand is subject to decode processing. At essentially the same time, atBlock I, the system controller starts timer T₃ to run for a time periodO (less than or equal to) T₃ (less than or equal to) 1 second.

As indicated at Block J, the system controller checks to determinewhether control activation signal A₃=1 is received from the symboldecoding module 16 within T₃=1 second, indicative that a bar code symbolhas been successfully read (i.e., scanned and decoded) within theallotted time period. If control activation signal A₃=1 is not receivedwithin the time period T₃=1 second, then at Block K the systemcontroller checks to determine whether control activation signal A₂=1 isreceived within the time period O (less than or equal to) T₃ (less thanor equal to) 3 seconds.

If a bar code symbol is not detected within this time period, then thesystem controller proceeds to Block L to deactivate laser diode 47,scanning motor 72 driven at high speed, photoreceiving circuit 12′, A/Dconversion circuit 13, bar code presence detection module 14 and symboldecoding module 16. In addition, the system controller reactivates IRsensing circuit 10A and scanning motor 72 driven at low speed. Notably,this event causes a transition from bar code reading state to objectdetection. Thereafter, at Block M the system controller remains in theobject detection state awaiting control activation signal A₁=O,indicative that an object is no longer in the object detection field.When this condition exists, the system controller returns to the STARTblock, as shown.

If at Block K, however, the system controller receives controlactivation signal A₂=1, indicative that a bar code once again is withinthe scan field, then the system controller checks to determine whethertime period T₂ has elapsed. If it has, then the system controllerproceeds to Block L and then to the START block by way of Block M. If,however, time period O (less than or equal to) T₂ (less than or equalto) 5 seconds has not elapsed, then the system controller resets timerT₃ to run once again for a time period O (less than or equal to) T₃(less than or equal to) 1 second. In essence, this provides the deviceat least another opportunity to read a bar code present within the scanfield when the system controller returns to control Block J.

Upon receiving control activation signal A₃=1 from the symbol decodingmodule, indicative that a bar code symbol has been successfully read,the system controller proceeds to Block O. At this stage of the systemcontrol process, the system controller continues to activate laser diode47, scanning motor 72 driven at high speed, photoreceiving circuit 12′and A/D conversion circuit 13, while deactivating symbol decoding module16 and commencing activation of data format conversion module 17, datastorage unit 18 and data transmission circuit 19. These operationsmaintain the scanning of the laser beam across the scan field, whilesymbol character data is appropriately formatted and transmitted to datacollection device 3 by a conventional data communication process, wellknown in the art.

After transmission of symbol character data to data collection device 3is completed, the system controller enters Block P and continuesactivation of laser diode 47, scanning motor 72 driven at high speed,photoreceiving circuit 12′ and A/D conversion circuit 13, whilereactivating IR sensing circuit 10A and deactivating symbol decodingmodule 16, data format-conversion module 17, data storage unit 18 anddata transmission circuit 19. To detect the continued presence of anobject within the object detection field, the system controller checksat Block Q whether control activation signal A₁=1 is received fromoptional IR sensing circuit 10. If A₁=O, indicative that the object isno longer in the object detection field, then the system controllerreturns to the START block. If control activation signal A₁=1 isreceived, then at Block R the system controller activates bar codepresence detection module 14, and deactivates optional IR sensingcircuit 10. (If optional IR sensing circuit 10 is not employed,operation proceeds as previously outlined with respect to FIGS. 6A–6F).These events represent once again a transition from object detection tothe bar code symbol presence detection state.

At Block S, the system controller starts timer T₄ to run for a timeperiod O (less than or equal to) T₄ (less than or equal to) 5 seconds,and timer T₅ to run for a time period O (less than or equal to) T₅ (lessthan or equal to) 3 seconds. Then, in order to determine whether a barcode symbol has been detected within the scan field, system controllerproceeds to Block T to determine whether control activation signal A₂=1is received. If this signal is not received with the time period O (lessthan or equal to) T₅ (less than or equal to) 3 seconds, indicative thatno bar code symbol is present in the scan field, the system controllerproceeds to Block U, at which it deactivates laser diode 47, scanningmotor 72 driven at high speed, photoreceiving circuit 12′, A/Dconversion circuit 13 and bar code presence detection module 14. Inaddition, the system controller reactivates IR sensing circuit 10A andscanning motor 72 driven at low speed. Thereafter, the system controllerremains at Block V until the object leaves the object detection fieldand (i.e., receives control activation signal A₂=0), at which time thesystem controller returns to the START block, as shown.

If, however, at Block T control activation signal A₂=1 is received,indicative that a bar code symbol has been detected in the scan field,the system controller proceeds through Blocks W and X to reactivatesymbol decoding module 16 and start timer T₆ to run for a time period O(less than or equal to) T₆ (less than or equal to) 1 second. Theseevents represent a state transition from the bar code symbol presencedetection to bar the code symbol reading. At Block Y, the systemcontroller checks to determine whether control activation signal A₃=1 isreceived from the signal decoding module within time period O (less thanor equal to) T₆ (less than or equal to) 1 second.

If a bar code symbol is not successfully read within this 1 second timeperiod, the system controller returns to Block T to form a first loop,within which the device is permitted to detect or redetect a bar codesymbol within the time period O (less than or equal to) T₄ (less than orequal to) 5 seconds. If a bar code symbol is decoded within this timeinterval, the system controller determines at Block Z whether thedecoded bar code symbol is different from the previously decoded barcode symbol. If it is different, then the system controller returns toBlock O as illustrated, to format and transmit symbol character data asdescribed hereinabove.

If, however, the decoded bar code symbol is not different than thepreviously decoded bar code symbol, then at Block AA the systemcontroller checks to determine whether timer T₄ has lapsed. If it hasnot lapsed, the system controller returns to Block T to form a secondloop, within which the device is permitted to detect or redetect a barcode symbol in the scan field and then successfully read a valid barcode symbol within the set time interval O (less than or equal to) T₄(less than or equal to) 5 seconds. If, however, timer T₄ lapses, thenthe system controller proceeds to Block BB, at which the systemcontroller deactivates laser diode 47, scanning motor 82 driven at highspeed, photoreceiving circuit 12′, A/D conversion circuit 13, bar codepresence detection module 14 and symbol decoding module 16. In addition,system controller reactivates IR sensing circuit 10A and scanning motor72 driven at low speed. Thereafter, the system controller remains atBlock CC until control activation signal A₁=O is received from IRsensing circuit 10A, indicative that the object detection field is freeof any objects. At this stage, the system controller returns to theSTART block, as shown in FIG. 12E.

Having described the operation of the first and second illustrativeembodiments of the bar code symbol reading device hereof, it will behelpful at this juncture to describe the various conditions which willcause state transitions to occur during the automatic operation of thedevice. In this regard, reference is made to FIG. 13 which provides astate transition diagram for the illustrated embodiments. As illustratedin FIG. 13, the automatic bar code symbol reading device of the presentinvention has three basic and one additional optional state ofoperation, namely: an optional object detection state, plus threerequired states: bar code symbol presence detection, bar code symbolreading, and symbol character data transmission/storage. The nature ofeach of these states has been described hereinabove in great detail.These four states are schematically illustrated as A (optional), B, Cand D, respectively, in the state transition diagram of FIG. 13.

Two optional “extensional states” have also been provided in the diagramof FIG. 13, such that the automatic bar code reading devices of theillustrative embodiments are capable of reading an infinite number ofconsecutively different bar code symbols without returning to theoptional object detection state. These states of operation are indicatedas E and F and represent bar code presence detection and bar code symbolreading operations, respectively. As described above, these operationsare employed when attempting to automatically read one or moreconsecutively different bar code symbols, that is, after a first barcode symbol has been successfully read utilizing operation states Athrough C.

As shown in FIG. 13, transitions between the various states areindicated by directional arrows. Besides each of these arrows aretransition conditions expressed in terms of control activation signals(e.g., A₁, A₂ and A₃), and where appropriate, state time intervals(e.g., T₁, T₂, T₃, T₄, T₅ and T₆). Conveniently, the state diagram ofFIG. 13 expresses most simply the four basic and two extensionaloperations occurring during the control flow within the system controlprograms of FIGS. 8A and 8B, and FIGS. 12A and 12B. Significantly, thecontrol activation signals A₁, A₂ and A₃ in FIG. 13 indicate whichevents within the object detection and/or scan fields can operate toeffect a state transition within the allotted time frame(s), whereprescribed.

Referring now to FIGS. 1, 14A through 16B, portable data collectiondevice of the present invention will be described. As illustrated inFIGS. 14A through 14C, data collection device 3 of the illustrativeembodiment comprises a hand-holdable housing 80 which houses theoperative elements of the device to be described below. Housing 80 has atop panel 80A, bottom panel 80B, front and rear panels 80C and 80D, andtwo opposing side panels 80E and 80F, as shown. A 4×4 membrane keypad 81is mounted through the lower portions of top panel 80A for manual entryof alphanumeric type data including, for example, data related to barcode symbols. Notably, a separate switch is provided for turning thedevice ON and OFF. Above the keypad, there is mounted an LCD type 1×16character display 82 for visually displaying data including (i) databeing manually entered through keypad 81, (ii) operator messages and(ii) data entry verification messages which will be described in greaterdetail hereinafter.

Via front panel 80C, adjacent character display 82, data-input anddata-output communications ports 83 and 84, respectively, are provided.As will be described in greater detail hereinafter, data-inputcommunication port 83 is particularly adapted (i) for receiving symbolcharacter data from the data-output communication port of ahand-holdable bar code symbol reading device (e.g., 2 or 2′), and (ii)for simultaneously providing electrical power to the power receivinglines (e.g., 23) thereof, which are physically associated with itsdata-output port (e.g., multi-pin connector plug 25 shown in FIG. 4). Incontrast, data-output communication port 84 is particularly adapted fortransmitting collected symbol character data stored in device 3, throughthe data-input communication port of a data-receiving host device, suchas a point of sale (POS) cash register/computer 85, illustrated in FIGS.8A, 8B, and 8C.

As shown in FIG. 14C, in particular, data-input communication port 83 isrealized in the illustrative embodiment by a 9 pin female connector,whereas data-output communication port 84 is realized as a 9 pin maleconnector. In this way, the 9 pin male connector 25 used to realize thedata-output communication port of bar code symbol reading devices 2 and2′, can be simply plugged into data-input communication port 83 toestablish a physical interface. Preferably hand-threaded screw fasteners(not shown) are provided on the 9 pin male connector 25 to effect asecure interconnection with data-input port 83 during portable bar codesymbol reading applications.

For conveniently supporting the data collection device on the operator'sbody while, for example, taking inventory, a pair of D-rings 88A and 88Bare rotatably mounted to the rear end of the housing. In this way, acord, shoulder strap or belt strap can be attached to the D-rings. Withthis housing support arrangement, the user can simply pickup thehand-holdable data collection device in one hand and manually enter datathrough the keypad using one's thumb while viewing the character displayscreen.

The hand-holdable data collection device includes a battery-powerstorage unit 89 realized, in the illustrative embodiment, as fourAA-type 1.2, 1.35, or 1.5 volt NiCad, NimH, Carbon-Zinc, Alkaline, orother batteries. While not shown, these batteries are contained within abattery carrier attached to a hinged panel formed in on the bottom panel80B of the housing. Access to the battery carrier is achieved simply byopening the hinged panel, which after replacement of batteries, can besnapped shut.

Referring to FIG. 15, the various components comprising thehand-holdable data collection device are shown integrated about systemcontroller 90. In the illustrated embodiment, the system controller isimplemented by a microprocessor associated with program memory (e.g.,EEPROM) for storing a system control program. Buffer memory (e.g., RAM)and appropriate latching circuitry are typically provided as well inmanner well known in the art. As shown in FIG. 15, the system controlleris operably connected with data entry keypad 81 and character display 82for entering and displaying data, respectively, as hereinbeforedescribed. Data-input and data-output communication ports 83 and 84 areeach operably connected to a communication driver circuit 91 by datatransmitting and receiving lines T_(x1) and R_(x1), respectively, asshown. In turn, the system controller is operably connected tocommunication driver circuit 91 by data transmitting and receivinglines, T_(x2) and R_(x2), respectively. With this arrangement, datacommunication protocol and the like can be transacted between (i) barcode symbol reading device connected to data-input communication port 83and (ii) communication driver circuit 91 via data transmitting andreceiving lines T_(x1) and R_(x1). Also, this arrangement facilitatestransaction of data communication protocol and the like between (i) ahost device (e.g., cash register/computer 85) connected to data-outputcommunication port 84, and (ii) communication driver circuit 91.

While not shown in FIG. 15 to avoid obfuscation, a conventional andpower distribution circuit will be provided for distributing power fromthe positive side of six volt supply 89, to all power consuming elementswithin the data collection device. In order to generate a twelve (12)volt supply for use within automatic bar code symbol reading devices 2and 2′, a power conversion circuit 92 is provided. As illustrated,battery power unit 89 provides a six (6) volt supply to power conversioncircuit 92, generating a twelve (12) volt supply. The six and twelvevolt supply lines are, in turn, provided to a power switching circuit93, which is controlled by the system controller by power switch enablesignal E.sub.R. The six and twelve volt power lines from power switchingunit 93 are connected to a pair of designated pins within the 9 pindata-input communication port 83, as shown. To detect low battery powerlevels, battery detect circuit 94 is operably connected between thepositive side of battery supply 89 and the system controller.

To determine whether the data-output communication port of a bar codesymbol reader is physically (and electrically) connected to data-inputcommunication port 83 of the data collection device, a bar code readerdetect circuit 95 is operably connected between data-input communicationport 83 and the system controller, as shown. Thus, when bar code readerdetect circuit 95 detects a bar code reader plugged into data-inputcommunications port 83, it will provide a bar code reader detect signalA.sub.UL to the system controller. This signal automatically activatesthe system controller to begin initializing for “uploading” of bar codesymbol character data from the bar code reader. Also, bar code readerdetect signal A_(UL) causes the system controller to provide powerswitch enable signal E_(R) to power switching circuit 93, to therebyempower the connected bar code reading device with the six and twelvevolt power supply lines.

Similarly, to determine whether the data-input communication port of ahost device is physically (and electrically) connected to data-outputcommunication port 84 of the data collection device, a host devicedetect circuit 96 is operably connected between data-outputcommunication port 84 and the system controller, as shown. Thus, whenhost device detect circuit 96 detects a host device plugged intodata-output communication port 84, it will provide a host device detectsignal A_(DL) to the system controller which automatically activates thesystem controller to begin initializing for “downloading” of collectedbar code symbol character data, from the data collection device into thehost device. To permit the host device to supply power to the datacollection device during data downloading operations, and thus conservebattery power, a power supply line 97 is provided between a pin ofdata-output communication port 84 and the positive side of batterysupply 89. To restrict power flow from the host device to the datacollection device, a diode 98 is inserted within this power supply line97, as shown.

Symbol character data downloaded from a bar code reading device andcollected through data-input communication port 83, is stored within adata storage unit 99, realized in the illustrative embodiment as 32kilobytes of RAM. To facilitate transfer of such data from the systemcontroller to RAM storage unit 99, a data bus 100 is provided, as shown.Also associated with data bus 100 is a non-volatile data storage unit101. The system controller will typically store particular data items,such as set-up parameters and the like, in non-volatile RAM storage unit101 as such data can be retained therein for the lifetime of the datacollection device.

RAM storage unit 99 is protected by a power-fail/protect-RAM circuit 102that is operably associated with a storage capacitor 103, the write lineof RAM storage unit 99 and the system controller. By this circuit 102,RAM storage unit 99 is protected in two ways. Firstly, during powertransitions, circuit 99 inhibits write signals to RAM storage unit 99,and consequently stored symbol character data is protected fromcorruption. Secondly, during periods of battery power failure, circuit102 enables storage capacitor 103 to provide power to RAM storage unit99 for minimally one hour in order to maintain the integrity of storedsymbol character data.

Having described the structure and function of the data collectiondevice of the illustrative embodiment, its versatile operation will nowbe described with reference to the system control program illustrated inFIGS. 16A and 16C. As indicated in FIG. 16A, upon enabling the POWER-ONswitch, the system controller advances to Block A. At Block A, thesystem controller checks to determine whether the output of host detectcircuit 96 indicates that a host device is plugged into data-outputcommunication port 84. If it does detect this condition, then the systemcontroller disconnects power supply 89 from data-input communicationport 83 (and thus any bar code symbol reader connected thereto) by wayof power switching circuit 93. Then at Block C, the system controllerchecks to determine whether there is any data stored in RAM storage unit99 for downloading to the connected host device. If there is no datastored in RAM storage unit 99, then the system controller proceeds toBlock D, and writes “MEMORY EMPTY” to character display 82. Thereafter,the system controller remains at Block E until it receives host detectsignal A_(DL)=0 indicative that the host device is no longer pluggedinto data-output communications port 84. Upon the occurrence of thisevent, the system controller returns to Block A, as shown.

If, at Block C, the system controller determines that there is datastored in RAM storage unit 99 for downloading into the host device, thenat Block F the system controller writes “TO COM HIT ENTER” to characterdisplay 82. At Block G, the system controller polls the keypad for theoccurrence of a key press operation, and at Block H determines whetherthe ENTER key has been pressed. If any key other than the ENTER ispressed, then the system controller returns to control Block A. If theENTER key is pressed, the system controller writes “TRANSMITTING” tocharacter display 82, and then at Block J downloads data from RAMstorage unit 99 to the host device connected to data-outputcommunication port 84. At Block Y, the system checks to determine if alldata in RAM storage unit 99 has been transmitted, and if so, writes“MEMORY EMPTY” or “DOWNLOAD COMPLETE” to character display 82, asindicated at Block D. Thereafter, the system controller remains at BlockE until the host device is disconnected from data-output communicationport 84, and thereupon returns to Block A.

If it is determined at Block K that data transfer from RAM storage unit99 is not complete, then as indicated at Block L, the system controllerchecks to determine whether the host device is still connected todata-output communication port 84 (i.e., A_(DL)=1). If host device hasbeen disconnected (i.e., A_(DL)=0), then the system controller returnsto Block A, as shown. If, on the other hand, the host device remainsconnected to data-output communications port 84, the system controllerreturns to Block J to form a control loop within which the systemcontroller will remain so long as there remains data in RAM storage unit99 and the host device remains connected to data-output communicationport 84.

As indicated at Block A, if the system controller does not receive hostdetect signal A_(DL)=1 from host detect circuit 96, indicative that ahost device is plugged into the data-output communication port, then thesystem controller proceeds to Block M. At Block M, the system controllerfirst checks the output of low battery circuit 94 to determine thatsufficient power is available to energize a bar code symbol readingdevice if plugged into data-input communication port 83. If insufficientbattery strength is indicated, then at Block N the system controllerdisconnects battery power supply 89 from data-input communication port93 by way of power switching circuit 94. Thereafter at Block O, thesystem controller writes “LOW BATTERIES” to character display 82. Thesystem controller remains at Block P until it receives host detectsignal A_(DL)=1, indicative that the host device is plugged intodata-output communication port 84. If so, the system controller advancesto Block C, as hereinbefore described. Notably, this choice of controlflow is based on the fact that, during data downloading operations,power is supplied to the data collection device by the host device, andthe battery level of the data collection device is of no consequenceduring such operations.

If, however, at Block M low battery level is not detected, then thesystem controller proceeds to Block Q. At Block Q, the system controllerchecks the output of bar code reader detect circuit 95 to determinewhether a bar code reader is plugged into data-input communication port83. If the system control receives bar code reader detect signalA_(UL)=O, then at Block R system controller writes “PLUG-IN READER” tocharacter display 82. Thereafter, the system controller returns to BlockA, as shown. If the system controller receives A_(UL)=1, indicative thata bar code reader is plugged into data-input communication port 83, thenthe system controller writes “READY TO READ” to character display 82, asindicated at Block S.

At Block T, the system controller polls both communication driver (i.e.,receiver) circuit 91 and keypad 81 for entry of data. If either of thesesystem components indicate receipt of data to be stored (e.g., from abar code reader or the keypad), then as indicated at Blocks U through V,the system controller uploads such data by first writing the data tocharacter display 82, and then storing the data in RAM storage unit 99.Then, at Block W, the system controller determines whether RAM storageunit 99 is filled to capacity. If it is, then at Block X the systemcontroller writes “MEMORY FULL” to character display 82 and thereafterremains at Block Y until it receives host detect signal A_(DL)=1,indicative that a host device is connected to data-output communicationsport 84 for downloading collected data thereto. If a host device isdetected at the data-output communications port 84, the systemcontroller proceeds to Block C for participating in downloading of acollection data, in a manner described above.

If, as indicated at Block W, the system controller determines that RAMstorage unit 99 is not full, then the system controller returns to BlockT. at which it checks again for incoming data over either the receivinglines R_(x2) of communication driver circuit 91 (i.e., bar code readerinput) or from the keypad. If there is incoming data from either ofthese system components, then the system controller proceeds to Blocks Uand V for participating in data uploading, as described above. Thesystem controller will follow this control loop provided that data ispresented for collection and RAM storage unit 99 has vacant memorystorage space.

If at Block T, the system controller determines that no data is beingpresented for collection, then at Block Z it checks the battery powersupply level of the battery supply unit 89. If a low battery level isdetected, then the system controller proceeds to Blocks N, O and Pdescribed above. At these control blocks, power supply to data-inputcommunication port 93 is disconnected in order to terminate power to theconnected bar code reading device, and the “LOW BATTERIES” message iswritten to character display 82. If, however, a low battery level is notdetected, then the system controller determines at Block AA whether anyincoming data has been presented for collection (i.e., by datauploading) within a predetermined time period (e.g., 2 minutes). If nodata has been presented for uploading, then as indicated at Block BB,the system controller “turns off” the connected bar code reader bydisconnecting the supply of battery power to data-input communicationport 83 by way of power switching circuit 93. Thereafter, as indicatedat Block CC, the system controller writes “HIT KEY TO READ” message tocharacter display 82. Then at Block DD, the system controller polls thekeypad for a key press operation. If any key is pressed, the systemcontroller remains in a control loop between Blocks DD and EE anddetermines whether a key has been pressed, or a host device has beenconnected to data-output communication port 84. If the system controllerreceives host detect signal A_(DL)=1 indicative that a host device isplugged into data-output communication port 84, the system controllerthen proceeds to Block C, automatically enabling the data collectiondevice for participation in the downloading of collected data, in amanner described above.

In the event that the operator desires to clear RAM storage unit 99 ofcollected data, the operator must enter a preset code word oralphanumeric code by way of keypad 81. This feature prevents accidentalerasure of collected data. Notably, the data collection device of thepresent invention does not require programming for data transfers.Instead, data uploading routines are programmed into data transmissioncircuit 19 of automatic bar code reading devices 2 and 2′. On the otherhand, data downloading routines are programmed into the host datareceiver. Preferably, these downloading routines are designed to acceptdownloaded symbols and create an ASC11 file.

The data collection device described above and the automatic bar codereading devices of the present invention provides an ultra-lightweight,fully portable bar code symbol reading system characterized bysimplicity of operation, high-speed symbol recognition and versatility.The automatic bar code symbol reading device of the present inventionhas been provided with a wide variety of complex decision-makingoperations which accord the automatic bar code symbol reading system ofthe present invention with a level of intelligence hitherto unattainedin the bar code symbol reading art. Within the spirit of the presentinvention, additional decision-making operations may be provided tofurther enhance the capabilities of the system.

While the particular illustrative embodiments shown and described abovewill be useful in many applications in code symbol reading, furthermodifications to the present invention herein disclosed will occur topersons skilled in the art. All such modifications are deemed to bewithin the scope and spirit of the present invention defined by theappended claims.

1. An automatic bar code symbol reading system, comprising: a housing having a light transmission aperture through which light of at least one wavelength can exit and enter into the housing; a bar code presence detection mechanism in the housing, for detecting a presence of a bar code located in a scan field defined external to the housing, and for automatically generating an activation signal in response to the detection of the presence of the bar code located in the scan field; an activatable scan data producing mechanism in the housing, for producing scan data from a bar code located in the scan field, the scan data producing mechanism including: a laser beam generating mechanism for generating a laser beam, a directing mechanism for directing the laser beam through the light transmission aperture and into the scan field, a laser beam scanning mechanism for repeatedly scanning the laser beam across the scan field and the detected bar code symbol, a laser light detecting mechanism for detecting the intensity of laser light reflected off the bar code symbol and passing through the light transmission aperture as the laser beam is repeatedly scanned across the scan field and the detected bar code, and a data producing mechanism for automatically producing scan data indicative of the detected intensity; an activatable scan data processing mechanism for processing produced scan data so as to detect and decode a bar code symbol in the scan field, and for automatically producing symbol character data representative of the decoded bar code symbol; and a control mechanism for controlling the operation of the automatic bar code symbol reading system, the control mechanism including: (i) an activation mechanism for automatically activating the activatable scan data producing mechanism and the activatable scan data processing mechanism for up to a predetermined time period in response to the generation of the activation signal, and (ii) a mechanism for automatically deactivating the activatable scan data producing mechanism and the activatable scan data processing mechanism in response to the failure of the scan data processing mechanism to detect and decode the bar code symbol on the detected object within the predetermined time period.
 2. The automatic bar code symbol reading system of claim 1, wherein the laser beam generating mechanism comprises a laser diode.
 3. The automatic bar code symbol reading system of claim 1, wherein the bar code symbol has first and second envelope borders, and wherein the scan data processing mechanism comprises a mechanism for detecting the first and second envelope borders of the bar code symbol, and mechanism for decoding the detected bar code symbol.
 4. The automatic bar code symbol reading system of claim 1, wherein the laser beam generating mechanism is operated in a pulsed laser mode so as to generate a pulsed laser beam, which is directed through the light transmission aperture and repeatedly scanned across the scan field to detect a presence of a bar code symbol in the scan field.
 5. The automatic bar code symbol reading system of claim 1, wherein the scan data processing mechanism and the control mechanism are disposed in the housing.
 6. The automatic bar code symbol reading system of claim 5, wherein the housing comprises a head portion and a handle portion.
 7. The automatic bar code symbol reading system of claim 6, wherein the laser beam producing mechanism comprises a visible laser diode in the housing.
 8. The automatic bar code symbol reading system of claim 7, wherein the laser light detecting mechanism comprises a photodetector in the housing.
 9. The automatic bar code symbol reading system of claim 7, wherein the scan data processing mechanism and the control mechanism comprise a programmed microprocessor in the housing.
 10. The automatic bar code symbol reading system of claim 9, which further comprises a housing support stand for supporting the housing above a workspace so that the automatic bar code symbol reading system can be used to read bar code symbols on objects while the housing is supported in the support stand.
 11. The automatic bar code symbol reading device of claim 9, wherein the predetermined time period is greater than about 3 seconds.
 12. The automatic bar code symbol reading system of claim 1, wherein the control mechanism further comprises a mechanism for automatically continuing activation of the activatable scan data producing mechanism and the activatable scan data processing mechanism for an additional time period in response to the detection and decoding of the bar code symbol within the predetermined time period to permit detection and decoding of another bar code symbol in the scan field which is different than the bar code symbol detected and decoded within the predetermined time period.
 13. The automatic bar code symbol reading system of claim 4, wherein the control mechanism further comprises a mechanism for automatically continuing activation of the activatable scan data producing mechanism and the activatable scan data processing mechanism for an additional time period in response to the detection and decoding of the bar code symbol within the predetermined time period to permit detection and decoding of another bar code symbol in the scan field which is different than the bar code symbol detected and decoded within the predetermined time period.
 14. An automatic bar code symbol reading system, comprising: a housing having a light transmission aperture through which light of at least one wavelength can exit and enter the housing; a bar code presence detection mechanism in the housing, for detecting a presence of a bar code located within at least a portion of a scan field defined external to the housing; an activatable laser beam source in the housing for producing, when activated, a laser beam; a laser beam detecting mechanism in the housing, for directing the visible laser beam through the light transmission aperture and into the scan field; an activatable scanning mechanism in the housing for repeatedly scanning, when activated, the laser beam across the scan field and across a bar code symbol in the scan field; a light detection mechanism in the housing, for detecting the intensity of laser light reflected off the bar code symbol as the laser beam is repeatedly scanned across the scan field and the bar code symbol, and for automatically producing scan data indicative of the detected intensity of the reflected laser light; a scan data processing mechanism for processing produced scan data so as to detect and decode the bar code symbol, and upon detecting and decoding the bar code symbol, automatically producing symbol character data representative of the decoded bar code symbol; a control mechanism for controlling the operation of the automatic bar code symbol reading system, the control mechanism including: (i) a mechanism for automatically activating the activatable laser beam source and the activatable scanning mechanism for up to a predetermined time period in response to the generation of the activation signal, and (ii) a mechanism for automatically deactivating the activatable laser beam source and the activatable scanning mechanism in response to the scan data processing mechanism failing to detect and decode the bar code symbol within the predetermined time period.
 15. The automatic bar code symbol reading device of claim 14, wherein the light detection mechanism has an operative scanning range measured from the transmission aperture out towards a region within the scan field, and wherein the scan field is characterized by at least one scanning plane having an essentially planar extent.
 16. The automatic bar code symbol reading system of claim 14, wherein the bar code symbol has first and second envelope borders, and wherein the scan data processing mechanism comprises a mechanism for detecting the first and second envelope borders of the bar code symbol, and a mechanism for decoding the detected bar code symbol.
 17. The automatic bar code symbol reading system of claim 14, wherein the housing comprises a head portion and a handle portion, and wherein the activatable laser beam source, the laser beam directing mechanism, the activatable scanning mechanism, and the light detection mechanism are in the head portion.
 18. A method of reading bar code symbols using an automatic unit, the method comprising the steps of: (a) supporting the unit adjacent an object bearing a bar code symbol so that the bar code symbol is located within at least a portion of a scan field defined external to the unit, and the unit is disposed in a non-contacting relationship with the object; (b) automatically generating an activation signal in response to a detection of a presence of the bar code symbol located in the scan field; (c) in response to the generation of the activation signal during step (b), (1) automatically activating for up to a predetermined time period, a laser beam source and an electrically driven scanning element in the unit so as to produce a laser beam which is directed through a light transmission aperture in the unit and repeatedly scanned across the scan field and the detected bar code symbol, (2) automatically detecting, at the unit, the intensity of laser light reflected off the detected bar code symbol, and automatically producing scan data indicative of the detected intensity of the reflected laser light, and (3) automatically processing produced scan data for up to the predetermined time period in order to decode the detected bar code symbol; and (d)(1) upon decoding the detected bar code symbol within the predetermined time period of step (c), automatically producing symbol character data representative of the decoded bar code symbol, and (d)(2) upon failing to decode the detected bar code symbol within the predetermined time period during step (c), automatically deactivating the laser beam source and the electrically driven scanning element.
 19. A method of reading bar code symbols using an automatic unit, the method comprising the steps of: (a) supporting the unit adjacent an object bearing a bar code symbol so that the bar code symbol is located in at least a portion of a scan field defined external to the unit, and the unit is disposed in a non-contacting relationship with the object; (b) transmitting pulsed energy from a pulsed energy source in the unit, into at least a portion of the scan field, and in response to receiving at the unit at least a portion of the transmitted pulsed energy reflected off the bar code in the scan field, automatically generating an activation signal; (c) in response to the generation of the activation signal during step (b), (1) automatically activating for a predetermined time period, a laser beam source and an electrically driven scanning element in the unit so as to produce a laser beam which is projected through a light transmission aperture in the unit and repeatedly scanned across the scan field and the bar code symbol, (2) automatically detecting, at the unit, the intensity of laser light reflected off the bar code symbol, and automatically producing scan data indicative of the detected intensity of the reflected laser light, and (3) automatically processing produced scan data for up to the predetermined time period so as to decode the detected bar code symbol; and (d)(1) upon decoding the detected bar code symbol within the predetermined time period during step (c), automatically producing symbol character data representative of the decoded bar code symbol on the detected object, and (d)(2) upon failing to decode the detected bar code symbol within the predetermined time period during step (c), automatically deactivating the laser beam source and the electrically driven scanning element.
 20. The method of claim 19, wherein the pulsed energy is a pulsed laser light signal, and step (b) comprises transmitting the laser light signal from the unit into at least a portion of the scan field, and automatically generating the activation signal in response to a detection of the transmitted laser light signal reflected off a bar code located in the scan field.
 21. The method of claim 20, wherein the bar code symbol has first and second envelope borders, and wherein step (b) comprises processing produced scan data so as to detect the bar code symbol by detecting the first and second envelope borders of the bar code symbol.
 22. An automatic bar code symbol reading system, comprising: a housing having a light transmission aperture through which light of at least one wavelength can exit and enter the housing; a bar code presence detection mechanism, situated in the housing, for transmitting a pulsed laser light signal through the aperture, outwardly into a scan field defined externally with respect to the housing, and for automatically generating a first activation signal in response to the detection of the transmitted laser light signal reflected off a bar code symbol located in the scan field; the bar code presence detection mechanism further comprising a scanning mechanism for producing a laser light beam within the hand-supportable housing and for directing the light beam through the light transmission aperture, and repeatedly scanning the visible light beam across the scan field, and across a detected bar code symbol, so as to produce scan data to thereby permit a decoding of the detected bar code symbol; a light detection mechanism in the housing, for detecting the intensity of light reflected off the bar code symbol and passing through the light transmission aperture, and automatically producing scan data indicative of the detected light intensity; a processing mechanism for processing the produced scan data so as to decode the detected bar code symbol, and automatically producing symbol character data representative of the decoded symbol in response to the decoding of the detected bar code symbol; and a control mechanism for controlling the operation of the automatic bar code symbol reading system, the control mechanism including a mechanism for automatically activating the scanning mechanism for up to a first predetermined time period in response to the generation of the first activation signal.
 23. The automatic bar code symbol reading system of claim 22, wherein the scanning mechanism comprises a laser diode in the housing for producing the visible laser beam, and an electrically driven scanning element for repeatedly scanning the laser beam across the scan field and the detected bar code symbol.
 24. The automatic bar code symbol reading system of claim 23, wherein the control mechanism further comprises a mechanism for automatically deactivating the scanning mechanism and the processing mechanism in response to the processing mechanism failing to generate the first activation signal within a first predetermined time period.
 25. The automatic bar code symbol reading system of claim 24, wherein the control mechanism further comprises a mechanism for automatically deactivating the scanning mechanism and the processing mechanism in response to the processing mechanism failing to decode the detected bar code symbol within a second predetermined time period.
 26. The automatic bar code symbol reading system of claim 24, wherein the housing comprises a head portion and a handle portion, and wherein the bar code presence detection mechanism and the scanning mechanism are in the head portion.
 27. The automatic bar code system reading system of claim 22, wherein the scanning mechanism has an operative scanning range measured from the transmission aperture out towards a region within the scan field, wherein the scan field is characterized as having at least one scanning plane having an essentially planar extent.
 28. An automatic bar code symbol reading system, comprising: a housing having a light transmission aperture through which light of at least one wavelength can exit and enter the housing; a bar code presence detection mechanism in the housing, for automatically detecting a presence of a bar code symbol located in a scan field defined external to the housing, and for automatically generating a first activation signal in response to the detection of the presence of the bar code symbol in the scan field; a scan data producing mechanism in the housing for producing scan data from the detected object located in the scan field, the scan data producing mechanism having an operative scanning range measured from the transmission aperture out towards a region within the scan field, the scan field being characterized by at least one scanning plane having an essentially planar extent, the scan data producing mechanism including (i) a laser beam generating mechanism for generating a laser beam within the housing, (ii) a laser beam scanning mechanism for projecting the laser beam through the light transmission aperture and for repeatedly scanning the laser beam across the scan field and a bar code symbol in the scan field, and (iii) a laser light detecting mechanism for detecting the intensity of laser light reflected off the bar code symbol and passing through the light transmission aperture, and for automatically producing scan data indicative of the detected intensity; a processing mechanism for processing produced scan data so as to decode the detected bar code symbol, and automatically producing symbol character data representative of the decoded bar code symbol in response to the decoding of the detected bar code symbol; and a control mechanism for controlling the operation of the automatic bar code symbol reading system, the control mechanism including a mechanism for automatically activating the scan data producing mechanism and the processing mechanism for up to a first predetermined time period in response to the generation of the activation signal.
 29. The automatic bar code symbol reading system of claim 28, wherein the control mechanism further comprises a mechanism for automatically deactivating the scan data producing mechanism and the processing mechanism in response to the processing mechanism failing to generate the activation signal within the first predetermined time period, and a mechanism for automatically deactivating the scan data producing mechanism and the processing mechanism in response to the processing mechanism failing to produce symbol character data within a second predetermined time period.
 30. An automatic bar code symbol reading system comprising: a housing having a light transmission aperture through which visible light can exit and enter the housing; a bar code presence detection circuit in the unit, for receiving energy from a scan field defined external to the housing, and for automatically generating an activation signal in response to the detection of energy reflected off a bar code symbol located in a scan field; a laser beam source in the housing for producing a laser beam; a laser beam directing mechanism for directing the laser beam through the light transmission aperture and into the scan field; an electrically driven scanning element in the housing, for repeatedly scanning the laser beam across the scan field, wherein the scan field is defined external to the housing; a laser light detection mechanism in the housing, for detecting the intensity of laser light reflected off the bar code symbol as the laser light beam is repeatedly scanned across the scan field and the detected bar code symbol, and automatically producing scan data indicative of the detected intensity of the reflected laser light, the light detection mechanism having an operative scanmng range measured from the transmission aperture out towards a region within the scan field; a processing mechanism for processing produced scan data in order to decode the detected bar code symbol and, upon decoding the detected bar code symbol, automatically producing symbol character data representative of the bar code symbol; and a control mechanism for automatically controlling the operation of the automatic bar code symbol reading system, the control mechanism including a mechanism for automatically activating the laser beam source, the electrically driven scanning element, the laser light detection mechanism and the processing mechanism for up to a first predetermined time period in response to the generation of the activation signal.
 31. The automatic bar code symbol reading system of claim 30, wherein the control unit further comprises a mechanism for automatically activating the laser beam source, the electrically driven scanning element, the laser light detection mechanism and the first processing mechanism for up to a second predetermined time period only in response to the production of the symbol character data within the second predetermined time period, thereby permitting a detection of a second bar code symbol disposed in the scan field.
 32. The automatic bar code symbol reading system of claim 30, wherein the control mechanism further comprises: a mechanism for automatically deactivating the laser beam source and the electrically driven scanning element in response to the failure of the processing mechanism to generate the activation signal within the first predetermined time period.
 33. The automatic bar code symbol reading system of claim 32, wherein the control mechanism further comprises a mechanism for automatically deactivating the laser beam source and the electrically driven scanning element in response to the failure of the processing mechanism to decode the detected bar code symbol within the first predetermined time period.
 34. The automatic bar code symbol reading system of claim 30, wherein the housing comprises a head portion and a handle portion, and wherein the bar code presence detection mechanism, the laser beam source, the laser beam directing mechanism, the electrically driven scanning element and the laser light detection mechanism are disposed in the head portion.
 35. A method of reading bar code symbols using an automatic hand- supportable unit having an operative scanning range, the method comprising the steps of: (a) supporting the hand-supportable unit adjacent an object bearing a bar code symbol so that the object is located within at least a portion of a bar code symbol presence detection field defined external to the hand-supportable unit and having an essentially volumetric extent, and the hand-supportable unit is disposed in a substantially non-contacting relationship with the object; (b) at the hand-supportable unit, receiving energy reflected from the bar code symbol presence detection field and automatically generating a first activation signal in response to the detection of energy reflected off a bar code symbol in the bar code symbol presence detection field; (c) in response to the generation of the first activation signal, automatically activating for a first predetermined time period by a control circuit, a laser beam source and an electrically driven scanning element in the hand-supportable unit so as to produce a laser beam which is projected through a light transmission aperture in the hand-supportable housing and repeatedly scanned across the bar code symbol presence detection field and the bar code symbol on the detected object, the field being defined external to the hand-supportable housing along an operative scanning range; (d) automatically detecting at the hand-supported unit, the intensity of laser light reflected off the detected bar code symbol as the light beam is scanned across the bar code symbol, and automatically producing a first electrical signal responsive to the detected intensity of the reflected laser light; (e) automatically continuing, for up to a predetermined time period, the activation of both the laser beam source and the electrically driven scanning mechanism so as to continue to produce the laser beam and repeatedly scan the laser beam across the field and the detected bar code symbol; (f) automatically detecting at the hand-supported unit, the intensity of laser light reflected off the detected bar code symbol, and producing an electrical signal responsive to the detected intensity of the reflected laser light; and (g) automatically processing the electrical signal for up to the predetermined time period in order to decode the detected bar code symbol on the detected object, and upon decoding the detected bar code symbol, automatically producing symbol character data representative of the decoded bar code symbol.
 36. A method of scanning a bar code symbol on an object by use of an automatic hand-supportable bar code symbol scanning device having a hand-supportable housing, the method comprising the steps of: (a) automatically detecting the presence of the bar code symbol within a bar code presence detection field defined external to the hand-supportable housing, by sensing energy reflected off the bar code symbol; (b) in automatic response to the determination of the bar code symbol within the detection field during step (a), producing scan data from the detected code symbol using the laser beam, and collecting the produced scan data.
 37. The method of claim 36, which further comprises: (c) processing the scan data collected during step (b) in order to decode the code symbol, and upon decoding the bar code symbol, producing symbol character data corresponding to the decoded code symbol. 